create new tag
, view all tags

Using the PGI compilers

  • The PGI (Portland Group) compilers are available on hydra, (as well as on all CF managed machines.)
  • The latest available version, on hydra, is 12.5 (as of Jun 2012)
  • As of ver 12.4, the CDK (cluster development kit) is included, providing IB support (mvapich) and a profiler

  • The compilers,under /share/apps/pgi/, are
    Fortran pgf77 and pgf90
    C pgcc
    C++ pgcpp


  • Look at ~hpc/.bashrc or ~hpc/.cshrc, how to use ~hpc/.pgi.sh or ~hpc/.pgi.source to setup your configuration.
  • Feel free to copy the ~hpc/.pgi.sh or ~hpc/.pgi.source file.
    bash/sh syntax tcsh/csh syntax
    if [ -f ~/.pgi.sh ]; then  
    . ~/.pgi.sh if (-e ~/.pgi.source ) source ~/.pgi.source

  • The basic needed configuration is something like
    bash/sh syntax tcsh/csh syntax
    # #
    # Portland Compiler Group Compilers... # Portland Compiler Group Compilers...
    # #
    PGIVER=12.5 set PGIVER  = 12.5
    PGI=/share/apps/pgi setenv PGI  /share/apps/pgi
    PGIx=$PGI/linux86-64/$PGIVER setenv PGIx $PGI/linux86-64/$PGIVER
    LM_LICENSE_FILE=$PGI/license.dat setenv LM_LICENSE_FILE $PGI/license.dat
    MANPATH=${MANPATH}:$PGIx/man:$PGIx/mpi/mpich/man set path = ($PGIx/bin $MPICH/bin $path)
    # if (! $?MANPATH) setenv MANPATH ""
    PATH=$PATH:$PGIx/bin:$MPICH/bin setenv MANPATH ${MANPATH}:$PGIx/man:$PGIx/mpi/mpich/man
    # #
    alias dbx="pgdbg -text -dbx" alias dbx pgdbg -text -dbx


  • Documentation on the PGI compilers can be found locally on hydra-2 or on the PGroup web site (here).
  • The man pages are in /share/apps/pgi/linux86-64/12.5/man/
  • The share objects are in /share/apps/pgi/12.3/share_objects


  • Trivial examples ("hello word!") are, on hydra, in ~hpc/tests/compilers.
  • Copy the content of that directory and use make -f Makefile.pgi to build the executables.

Older versions

  • Versions 12.3 and 12.4 are under /share/apps/pgi/, (the latest version supported by the CF at SAO is 12.3)
  • Older versions are (still) under /software/pgi/, i.e., version 9.0 is in /software/pgi/linux86-64/9.0/.
  • Older examples of setup files are ~hpc/.pgi-v9.0.source and ~hpc/.pgi-v9.0.sh

-- SylvainKorzennikHPCAnalyst - 25 Jan 2012 - revised 05 Apr 2012

Topic revision: r4 - 2012-06-28 - SylvainKorzennikHPCAnalyst
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2015 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback