Portland Group Compiler

Portland Group Fortran and C/C++ compilers, including guidance for MHN campus licensing and installation.

Using the PGI Compilers on LRZ HPC systems

Since the PGI compilers are not offered by default, it is necessary to configure their use via the environment module system:

module unload intel 
module load pgi

The Fortran compiler can then be called via pgfortran or pgf90, the C compiler via pgcc, and the C++ compiler via pgCC. A debugger pgdbg is also available. For High Performance Fortran (a parallel Fortran dialect), use the pghpf command.

Using the PGI Compilers on the Munich Campus

The license  can either be used for the Intel IA32 architecture, or for the AMD x86-64 ("Opteron") / Intel EM64T architecture. Also, support for programming NVidia-based accelerator cards via OpenACC directives has been added. Relicensing is possible for all institutes within the MHN (Münchner Hochschulnetz).

This document contains installation instructions for the software and the licenses.

A license may be obtained for EUR 320.

License regulations

The licensees should please note the following guidelines for usage of the software:

  • Licenses are distributed on a per IP basis, i. e. for each IP address you wish to use the software you need to purchase at least one license.
  • Access to the license server is limited to the designated IP addresses.
  • If more than one user uses the software on a regular basis, or if the license validation runs over a firewall IP, you may need to purchase additional licenses.
  • Licensees of the AMD x86-64 compiler may make use of 32 and 64 bit compilers from the assigned IP address.
  • Please note that since there is a concurrent user limit which is well below that of the node limit (i. e. number of distributed licenses) you occasionally may have to wait for your colleagues completing their compilation runs before you can do your own work.

To obtain a valid license for your compiler please proceed as follows:

  1. Open an incident at the LRZ service desk specifying your postal address, phone and fax number, the number of licenses requested, and a list of IP addresses consistent with this number. It is only on these machines that the compiler will be able to run.
  2. In return, you will receive an answer containing a user name and password for download of the license file, which you should copy into $PGI/license.dat via cut and paste.

Treatment of firewalled systems

If the system the software will run on is behind a firewall, the following points need to be taken care of:

  • The client machine must have an assigned IP address under which it is known in the Internet. It is this IP address which is required by the license server, not a private subnet address.
  • On the firewall itself, the ports 7496 and 7497 need to be opened.

Downloading the Software

Please download the 17.9 release from the LRZ web server. User name and password are the same as mentioned above for access to the license file.

Installing the PGI Compiler

  • STEP 1: Create the directory in which you wish to install the software. Common locations would be /usr/pgi or /usr/local/pgi, but installation can occur in any directory where you have appropriate permissions. Please make sure that the installation directory has the necessary ownership and permissions appropriate for your site by using the chown and chmodcommands.

    The following assumes installation in /usr/pgi. Set the environment variable PGI to the name of the installation directory. Assuming csh:

     setenv PGI /usr/pgi 
    Or, assuming bash or ksh:
     export PGI=/usr/pgi 

    Please note that the environment variable PGI is required for the use of the compiler; hence if you install the compiler for multi-user operation, it is recommended that you insert the following lines into your system profiles:

     export PATH="$PATH":$PGI/linux86/<version>.<subrelease>/bin 

    If you wish to use the 64 bit compiler on an AMD x86-64, please use the PATH setting

     export PATH="$PATH":$PGI/linux86-64/<version>.<subrelease>/bin/ 
    instead. Furthermore, it may be necessary to also set or increment the LD_LIBRARY_PATH variable to run dynamically linked executables.

  • STEP 2:The compressed tar file needs to be uncompressed and untarred before
     tar -xzpf pgi-x.y.tgz 

    Note that the products cannot be installed into the same directory where the tar file is unpacked, so it is recommended you execute the above commands in /tmp or another location that is not the installation directory.

    All software should fit into less than 500 MB of disk space.

  • STEP 3:The install script must be run to properly install the software. Change to the directory where you uncompressed and untarred the tar file, and run:
     ./install 
    The install script will list the products that are available. You will be asked which products should be installed and to select an installation directory.
  • STEP 4:Do not forget to set the permissions properly, for example
     cd $PGI chmod -R o+rX . 
    if all users on your machine should be able to use the software. If the license file is appropriately installed as $PGI/license.dat, the compiler is ready for operation: Do not forget to set the environment variable PGI and augmenting your PATH and try using the compiler on your source file xx.f90:
     pgfortran -c xx.f90