IBM®
Skip to main content
    Country/region [select]      Terms of use
 
 
    
     Home      Products      Services & solutions      Support & downloads      My account     
 
developerworks > My developerWorks >  Dashboard > Linux for Power Architecture > ... > Performance Products > IBM Compiler Matrix
developerWorks
Log In   View a printable version of the current page.
Overview Connect Spaces Forums Wikis
IBM Compiler Matrix
Added by billburos, last edited by billburos on Oct 22, 2009  (view change)
Labels: 
(None)

Table of contents



Quick links: redhat sles openmpi



Information and Trial Downloads

IBM Compilers

IBM XL C/C++ Version 9 and XL Fortran Version 11.1

IBM XL C/C++ Advanced Edition Version 10.1 and XL Fortran Version 12.1

IBM Rational Cafés



IBM Compilers observations

  • IBM compilers are generally capable of better performance than the open-source gcc compilers (more advanced optimization techniques, specialized focus on the hardware platform)
  • New IBM compiler versions for Linux on Power generally stay in sync with the IBM compiler versions for AIX
  • IBM compilers generally have hardware-specific enhancements
    • If your application can be compiled for specific hardware targets and maximum optimization, improved performance gains can be achieved for that particular hardware system
    • For example, IBM compilers specifically support GPUL, Power 5 and Power 6 hardware
  • IBM compilers support program directed feedback (PDF)
  • Each new version of the IBM compilers incorporate many incremental fixes and improvements, many of which show improved performance
    • The IBM compilers are recommended for all benchmarking and high performance work
    • The latest versions include updates for the OpenMP processing directives which can also result in improved performance

Using XLC/XLF with openmpi

Here's an example script for using the XLC/XLF compilers with openmpi.

#!/bin/bash

compile_cmd="mpicc "
user=hpc

program=$1
cflags=$2
echo "xlc compile cflags" $cflags
export PATH=$PATH:/opt/ibmcmp/vac/10.1/bin:/opt/ibmcmp/xlf/12.1/bin:$PATH
export OMPI_CC=xlc
export OMPI_FC=xlf90_r
export OMPI_CFLAGS=-q64
export OMPI_FCFLAGS=-q64
export OMPI_LDFLAGS=-q64

echo "Compiling with: " $compile_cmd $program ${cflags} -q64 -L/usr/lib64/mpi/gcc/openmpi/lib64 /home/$user/${program}.c  -o /home/$user/${program} 

$compile_cmd ${cflags} -q64 -L/usr/lib64/mpi/gcc/openmpi/lib64 ${program}.c -o /home/$user/${program}



Related products

  • ESSL for Linux on POWER available and often used in specialized HPC workloads where engineering and scientific performance improvements are needed.
  • FDPR/Pro - Feedback Directed Program Restructuring (FDPR-Pro) is also available for performance improvements of executables. More information is available at this web site



IBM Compilers - XL C/C++ - Distro Support Summary


Latest updates for supported IBM C and C++ compilers



XL C/C++ example matrix of "support"



"This is not an official support page"

Please be aware, we created this page as a handy but informal mapping of where and when the IBM compilers are expected to be supported. For official and formal support questions, please contact your IBM representative.

Keep in mind that combinations listed in the tables below do not necessarily mean they've been tested by the performance teams.


  • Supported: The product was announced at this distro level - install, build and run-time support provided
  • Included: Installation, build and run-time environments should work just fine
  • Binary Should Run: Binary compatibility is usually complicated.
    • For the tables below, this essentially simply says that the basic compiler was not updated to install and be able to build/compile/link executables on this distro base.
    • Binaries built on previous distro versions should run on the newer distro versions using the runtime libraries provided by the IBM Compiler product.
    • Binary compatibility is dependent on the associated distro rules, guidelines, and restrictions. No claims are being made here.



Red Hat RHEL support


The XL Fortran version level has historically been numbered two versions ahead of the corresponding XL C/C++ version. For example:

  • XL C/C++ Ver 7 was released along-side XL Fortran Ver 9.1
  • XL C/C++ Ver 8 was released along-side XL Fortran Ver 10.1
  • XL C/C++ Ver 9 was released along-side XL Fortran Ver 11.1
  • XL C/C++ Ver 10.1 was released along-side XL Fortran Ver 12.1

XL C/C++
Ver 7 for
RHEL4
XL C/C++
Ver 8 for
RHEL4
XL C/C++
Ver 9 for
RHEL5
XL C/C++
Ver 10.1 for
RHEL5
Latest: Ver 7.0.1-3
Apr 2007
Ver 8.0.0-4
Dec 2007
Ver 9.0.0-4
Aug 2008
Ver 10.1.0-0
Sep 2008
         
RHEL 4 GA
Supported


RHEL 4 u1 Included Supported


RHEL 4 u2,3,4,5,6 Included Included

         
RHEL 5 GA
Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Supported
RHEL 5 u1 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Included
RHEL 5 u2 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Included Supported
RHEL 5 u3 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Included Included

(1): While previously generated binaries "should" run, this is not intended to be a binary compatibility claim.


For discussions or questions...

To start a discussion or get a question about this table answered, consider posting on the Linux for Power Architecture forum.




Novell SuSE SLES Support


The XL Fortran version level has historically been numbered two versions ahead of the corresponding XL C/C++ version. For example:

  • XL C/C++ Ver 7 was released along-side XL Fortran Ver 9.1
  • XL C/C++ Ver 8 was released along-side XL Fortran Ver 10.1
  • XL C/C++ Ver 9 was released along-side XL Fortran Ver 11.1
  • XL C/C++ Ver 10.1 was released along-side XL Fortran Ver 12.1

XL C/C++
Ver 7 for
SLES9
XL C/C++
Ver 8 for
SLES9
XL C/C++
Ver 8 for
SLES10
XL C/C++
Ver 9 for
SLES10
XL C/C++
Ver 10.1 for
SLES10
XL C/C++
Ver 10.1 PTF for
SLES10 SLES11
Latest: Ver 7.0.0-5
Apr 2007
Ver 8.0.0-4
Dec 2007
Ver 8.0.0-4
Dec 2007
Ver 9.0.0-4
Aug 2008
Ver 10.1.0-0
Sep 2008
Ver 10.1.0-1
Mar 2009
             
SLES 9 GA
Supported





SLES 9 sp1 Included Supported



SLES 9 sp2 Included Included



             
SLES 10 GA
Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Supported


SLES 10 sp1 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Included Supported


SLES 10 sp2 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Included Included
Supported Supported
             
SLES 11 Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Cannot build
Binary should run (1)
Supported

(1): While previously generated binaries "should" run, this is not intended to be a binary compatibility claim.


For discussions or questions...

To start a discussion or get a question about this table answered, consider posting on the Linux for Power Architecture forum.




 
    About IBM Privacy Contact