PGI Compiler

Version System A System B System C Notes
21.7.0 - + + Installed in September 2021
21.2.0 - + + Installed in June 2021
20.7.0 - + + Installed in September 2020
20.4.0 + + + Installed in September 2020
20.1.0 + + + Installed in March 2020
19.10.0 +(default) +(default) +(default) Installed in March 2020
19.9.0 + + + Installed in October 2019
19.1.0 + + + Installed in March 2019
18.10.0 + + + Installed in March 2019
18.7.0 + + Installed in October 2018
18.3.0 + + + Installed in March 2018
17.10.0 + + + Installed in March 2018
17.9.0 + + + Installed in October 2017
17.3.0 + + + Installed in March 2017
16.10.0 + + + Installed in December 2016
16.7.0 + Installed in October 2016

+ : Available for use
― : Not available for use

Version Modulefile Name
21.7.0 nvhpc/21.7.0
21.2.0 nvhpc/21.2.0
20.7.0 nvhpc/20.7.0
20.4.0 pgi/20.4.0
20.1.0 pgi/20.1.0
19.10.0 pgi/19.10.0
19.9.0 pgi/19.9.0
19.1.0 pgi/19.1.0
18.10.0 pgi/18.10.0
18.7.0 pgi/18.7.0
18.3.0 pgi/18.3.0
17.10.0 pgi/17.10.0
17.9.0 pgi/17.9.0
17.3.0 pgi/17.3.0
16.10.0 pgi/16.10.0
16.7.0 pgi/16.7.0

Note that the default compiler of System A is set to Cray and the default compiler of System B and C is set to Intel. Therefore, you need to switch from the default compiler to PGI Compiler by executing the module command as below. The default version of PGI Compiler shown in the above list will be set.

When switching from Cray to PGI Compiler (System A):
$ module switch PrgEnv-cray PrgEnv-pgi
When switching from Intel to PGI Compiler (System B or C):
$ module switch PrgEnv-intel PrgEnv-pgi

When switching between the versions of PGI Compilers, execute the module command with PrgEnv-pgi loaded as below:

$ module switch pgi/12.8 pgi/12.3

To automatically execute a command when logging in to the System, specify such command in the login shell startup-file by following Setting Up System.
For details on the module command, see Modules.

  • System A

    Language Command Operands
    Fortran ftn ftn [sequence_of_options] sequence_of_files
    C cc cc [sequence_of_options] sequence_of_files
    C++ CC CC [sequence_of_options] sequence_of_files
  • System B and C

    Language Command Operands
    Fortran pgf95 pgf95 [sequence_of_options] sequence_of_files
    C pgcc pgcc [sequence_of_options] sequence_of_files
    C++ pgc++ pgc++ [sequence_of_options] sequence_of_files

  • Main options (e.g., parallelization, optimization)

    Option Purpose
    -o FILENAME Specifies the name of the object file.
    -mcmodel=medium -dynamic Compiles codes using more than 2GB of static memory in the System A and D.
    -mcmodel=medium Compiles codes using more than 2GB of static memory in the System B and C.
    -mp Enables compiler recognition of OpenMP directives.
    -Mconcur -dynamic Enables autothreading.
    -O0/-O1/-O2/-O3/-O4 Specifies general optimization at four levels. (The default is 2.)
    -fast Chooses generally optimal flags for the target platform.
    -Mipa=fast Enables interprocedural optimization.
  • Massage and debugging options

    Option Purpose
    -Mlist Generates a report.
    -Minform,inform Displays all warning messages.
    -Minfo Displays optimization messages.
    -Mneginfo Displays messages to explain why optimizations did not occur in a given instance.
  • Fortran language options

    Option Purpose
    -Mfixed Specifies that Fortran source programs are written in fixed source form.
    -Mfree Specifies that Fortran source programs are written in free source form.
    -Mstandard Generates messages when nonstandard usage of Fortran is encountered.
    -Mdclchk Warns of the IMPLICIT type statement.
    -Mbyteswapio Supports the big-endian file.
    -C Performs bounds checking.

$ ftn test.f90    # For Fortran
$ cc test.c       # For C
$ CC test.cpp     # For C++
$ tssrun ./a.out    # Execution

$ pgf95 test.f90    # For Fortran
$ pgcc test.c       # For C
$ pgc++ test.cpp     # For C++
$ tssrun ./a.out    # Execution

$ pgf95 -Mconcur test.f90
$ tssrun -A p=1:t=4:c=4 ./a.out # The number of parallels = 4

$ pgcc -mp test.c
$ tssrun -A p=1:t=8:c=8 ./a.out # The number of parallels = 8

System Library
A Cray MPI Library
B and C OpenMPI Library
  • Cray MPI library is available in the System A. How to compile, link, and run MPI programs, see Cray MPI Library.
  • OpenMPI library is available in the System B and C. How to compile, link, and run MPI programs, see OpenMPI Library.


Copyright © Academic Center for Computing and Media Studies, Kyoto University, All Rights Reserved.