Difference between revisions of "GNU Compiler 2016"

From HPC users
Jump to navigationJump to search
Line 1: Line 1:
The GNU Compilers are available as module and as part of the operating system. The compiler of the operating system is GNU 4.8.5. To see the other available versions of the GNU Compilers type
The GNU Compilers are available as module and as part of the operating system. The compiler of the operating system is GNU 4.8.5. <br/>
   [abcd1234@hpcl001]$ module av GCC
To see the other available versions of the GNU Compilers type
   [abcd1234@hpcl001]$ module av GCC/
which currently shows
which currently shows
  ---------------- /cm/local/modulefiles ----------------
  ---------------- /cm/local/modulefiles ----------------
   gcc/6.1.0
   '''gcc/6.1.0'''
  ---------- /cm/shared/uniol/modules/compiler ----------
  ---------- /cm/shared/uniol/modules/compiler ----------
   GCC/4.9.4-2.25    GCC/5.4.0-2.26    GCC/6.2.0-2.27 (D)
   '''GCC/4.9.4-2.25'''   '''GCC/5.4.0-2.26'''   '''GCC/6.2.0-2.27''' (D)
 
This output depends on the currently loaded environment. If you change to the newer environment, the output will differ:
module load hpc-env/6.4  # chenge the environment
module av GCC/
----------------------------------------- /cm/local/modulefiles -----------------------------------------
  '''gcc/6.1.0'''
 
--------------------------------- /cm/shared/uniol/modules/6.4/compiler ---------------------------------
  '''GCC/6.4.0-2.28''' (L)
 


To load the module of your choice type e.g.
To load the module of your choice type e.g.

Revision as of 12:19, 28 June 2019

The GNU Compilers are available as module and as part of the operating system. The compiler of the operating system is GNU 4.8.5.
To see the other available versions of the GNU Compilers type

 [abcd1234@hpcl001]$ module av GCC/

which currently shows

---------------- /cm/local/modulefiles ----------------
  gcc/6.1.0
---------- /cm/shared/uniol/modules/compiler ----------
  GCC/4.9.4-2.25    GCC/5.4.0-2.26    GCC/6.2.0-2.27 (D)

This output depends on the currently loaded environment. If you change to the newer environment, the output will differ:

module load hpc-env/6.4   # chenge the environment
module av GCC/
----------------------------------------- /cm/local/modulefiles -----------------------------------------
  gcc/6.1.0
--------------------------------- /cm/shared/uniol/modules/6.4/compiler ---------------------------------
  GCC/6.4.0-2.28 (L)


To load the module of your choice type e.g.

 [abcd1234@hpcl001]$ module load GCC/4.9.4-2.25
 [abcd1234@hpcl001]$ module list
 Currently loaded modules: ... GCC/4.9.4-2.25

The commands for the available languages are:

Name Description
gcc C compiler
g++ C++ compiler
gfortran Fortran compiler

Advantages

  • high availability, open source (free)
  • new standards implemented
  • fast compilation
  • performance of resulting C++ usually good
  • most open source software tested with GNU

Disadvantages

  • optimization of code is moderate: performance of C, Fortran code can be moderate