Difference between revisions of "Development Tools"
(Created page with "= Software Development Tools = Research Computing provides a number of software development tools, compilers, libraries, debuggers, IDEs, interpreters, etc. on the CIRCE envi...") |
|||
(11 intermediate revisions by 2 users not shown) | |||
Line 5: | Line 5: | ||
== Compilers == | == Compilers == | ||
The following compilers are available on CIRCE for C, C++, Fortran, and Java, and represent the latest available stable releases: | The following compilers are available on CIRCE/SC for C, C++, Fortran, and Java, and represent the latest available stable releases: | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Vendor''' | |'''Vendor''' | ||
|'''Version''' | |'''Version''' | ||
Line 17: | Line 18: | ||
|- | |- | ||
|GNU Compiler Collection (GCC) | |GNU Compiler Collection (GCC) | ||
| | |7.3.0 | ||
|gcc | |gcc | ||
|g++ | |g++ | ||
|gfortran | |gfortran | ||
|gcj | |gcj | ||
|compilers/gcc/ | |compilers/gcc/7.3.0 | ||
|- | |- | ||
|Intel Compiler Suite | |Intel Compiler Suite | ||
| | |2018 | ||
|icc | |icc | ||
|icpc | |icpc | ||
|ifort | |ifort | ||
|n/a | |n/a | ||
|compilers/intel/ | |compilers/intel/2018_cluster_xe | ||
|- | |- | ||
|Portland Group PGI | |Portland Group PGI (legacy) | ||
|12.10 | |12.10 | ||
|pgcc | |pgcc | ||
Line 46: | Line 47: | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Vendor''' | |'''Vendor''' | ||
|'''Version''' | |'''Version''' | ||
Line 52: | Line 54: | ||
|- | |- | ||
|IntelMPI | |IntelMPI | ||
| | |2017.0.098 | ||
|Intel | |Intel | ||
|compilers/intel/ | |compilers/intel/2017_cluster_xe | ||
|- | |- | ||
|OpenMPI | |OpenMPI | ||
| | |2.0.4 | ||
|GCC. Intel, PGI | |GCC. Intel, PGI | ||
|mpi/openmpi/ | |mpi/openmpi/2.0.4 | ||
|- | |- | ||
|MVAPICH2 | |MVAPICH2 | ||
Line 72: | Line 74: | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Compiler Module''' | |'''Compiler Module''' | ||
|'''MPI Module''' | |'''MPI Module''' | ||
|- | |- | ||
|compilers/intel/ | |compilers/intel/2015_cluster_xe | ||
|n/a (IntelMPI is built-in) | |n/a (IntelMPI is built-in) | ||
|- | |- | ||
Line 90: | Line 93: | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Name''' | |'''Name''' | ||
|'''Provides''' | |'''Provides''' | ||
Line 121: | Line 125: | ||
|} | |} | ||
== Scripting Languages == | == Scripting Languages and Development Kits == | ||
The systems support a number of scripting languages. The table below provides further information | The systems support a number of scripting languages. The table below provides further information. Additional versions may be available for some tools. These can be found using the command 'module avail'. | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Shell/Language''' | |'''Shell/Language''' | ||
|'''Version''' | |'''Version''' | ||
|'''Location''' | |'''Location or Module''' | ||
|- | |- | ||
|bash | |bash | ||
Line 142: | Line 147: | ||
|/usr/bin/perl | |/usr/bin/perl | ||
|- | |- | ||
| | |perl | ||
|2.7. | |5.28.0 | ||
|/ | |module: apps/perl/5.28.0 | ||
|- | |||
|python2 | |||
|2.7.11 | |||
|module: apps/python/2.7.11 | |||
|- | |||
|python3 | |||
|3.6.2 | |||
|module: apps/python/3.6.2 | |||
|- | |||
|anaconda | |||
|5.0.0 | |||
|module: apps/anaconda/5.0.0 | |||
|- | |- | ||
|ruby | |ruby | ||
|1.8.7 | |1.8.7 | ||
|/usr/bin/ruby | |/usr/bin/ruby | ||
|- | |||
|Java | |||
|JDK 1.8.0_121.x86_64 | |||
|module: apps/jdk/1.8.0_121.x86_64 | |||
|- | |||
|.NET SDK/Core | |||
|3.1.418 | |||
|module: apps/dotnet/3.1.418 | |||
|} | |} | ||
Line 156: | Line 181: | ||
{| class=wikitable | {| class=wikitable | ||
|- style="background-color:#f1edbe;" | |||
|'''Name''' | |'''Name''' | ||
|'''Version''' | |'''Version''' | ||
Line 169: | Line 195: | ||
Numerous debuggers and profiling tools are installed. Please consult the documentation for your selected compiler for more information. | Numerous debuggers and profiling tools are installed. Please consult the documentation for your selected compiler for more information. | ||
{| class=wikitable | |||
|- style="background-color:#f1edbe;" | |||
|'''Name''' | |||
|'''Version''' | |||
|'''Module''' | |||
|- | |||
|GDB | |||
|7.11.1 | |||
| apps/gdb/7.11.1 | |||
|} |
Latest revision as of 19:49, 19 April 2022
Software Development Tools
Research Computing provides a number of software development tools, compilers, libraries, debuggers, IDEs, interpreters, etc. on the CIRCE environment. Many of these are accessible via the Environment Modules system.
Compilers
The following compilers are available on CIRCE/SC for C, C++, Fortran, and Java, and represent the latest available stable releases:
Vendor | Version | C | C++ | Fortran | Java | Module |
GNU Compiler Collection (GCC) | 7.3.0 | gcc | g++ | gfortran | gcj | compilers/gcc/7.3.0 |
Intel Compiler Suite | 2018 | icc | icpc | ifort | n/a | compilers/intel/2018_cluster_xe |
Portland Group PGI (legacy) | 12.10 | pgcc | pgCC | pgf77/pgf90 | n/a | compilers/pgi/12.10 |
MPI Libraries
Many numerical codes now have support for compiling and linking against MPI or Message Passing Interface libraries. Research Computing supports the use of the IntelMPI and OpenMPI libraries. Several other MPI versions are available for compatibility purposes, but IntelMPI and OpenMPI receive the best support from our group. Prior to using an MPI library, you will wish to load a module for a compiler suite, as shown in the table above.
Vendor | Version | Supported Compilers | Module |
IntelMPI | 2017.0.098 | Intel | compilers/intel/2017_cluster_xe |
OpenMPI | 2.0.4 | GCC. Intel, PGI | mpi/openmpi/2.0.4 |
MVAPICH2 | 1.8a2 | GCC, Intel, PGI | mpi/mvapich2/1.6 |
Stable & Tested Compiler/MPI Version Combinations
Other combinations have been tested and shown to be stable, but these are the combinations we recommend and will be better able to support:
Compiler Module | MPI Module |
compilers/intel/2015_cluster_xe | n/a (IntelMPI is built-in) |
compilers/gcc/4.8.1 | mpi/openmpi/1.6.1 |
compilers/pgi/12.10 | mpi/openmpi/1.6.1 |
Numerical Libraries
The following numerical libraries for BLAS, LAPACK, FFTW, GSL, etc. are available and supported on the system:
Name | Provides | Vendor | Version | Linker Flags |
ACML | BLAS/LAPACK | AMD | 4.4.0 | -L/opt/lib/acml/4.4.0/gfortran64/lib -lacml_mv -lacml
|
-L/opt/lib/acml/4.4.0/gfortran64_mp/lib -lacml_mv -lacml
| ||||
MKL | BLAS/LAPACK/BLACS | Intel | 12.1.0 | -mkl=sequential
|
SCALAPACK/FFT | -mkl=cluster
|
Scripting Languages and Development Kits
The systems support a number of scripting languages. The table below provides further information. Additional versions may be available for some tools. These can be found using the command 'module avail'.
Shell/Language | Version | Location or Module |
bash | 4.1.2 | /bin/bash |
tcsh | 6.17.00 | /bin/tcsh |
perl | 5.10.1 | /usr/bin/perl |
perl | 5.28.0 | module: apps/perl/5.28.0 |
python2 | 2.7.11 | module: apps/python/2.7.11 |
python3 | 3.6.2 | module: apps/python/3.6.2 |
anaconda | 5.0.0 | module: apps/anaconda/5.0.0 |
ruby | 1.8.7 | /usr/bin/ruby |
Java | JDK 1.8.0_121.x86_64 | module: apps/jdk/1.8.0_121.x86_64 |
.NET SDK/Core | 3.1.418 | module: apps/dotnet/3.1.418 |
IDEs
Integrated Development Environments are available via the CIRCE Desktop Environment Applications menu. The following are installed:
Name | Version |
Eclipse | Ganymede |
Netbeans | 6.5 |
Debugging and Profiling
Numerous debuggers and profiling tools are installed. Please consult the documentation for your selected compiler for more information.
Name | Version | Module |
GDB | 7.11.1 | apps/gdb/7.11.1 |