IBM compiler documentation: ``IBM: XL Fortran'', especially ``IBM AIX compiler information center''. Another source of the compiler documentation: ``Documentation for AIX Systems'', especially ``IBM XL Fortran for AIX Version 8.1.1 Library''. Particularly useful hints: ``Porting Programs from the Crays to the SP''.
The compiler to be used for OpenMP runs is called with
``binds the object files to the thread-safe components'' (IBM documentation).
For scalar code
xlf90 might be sufficient.
Important switches are:
-qsuffix=f=f90 -qsuffix=cpp=F90: To tell the compiler about the existence of Fortran90 and to enable the preprocessing for files with suffix ``F90''.
-qextname=flush:etime: Append underscore to both routine names. The non-standard routine
call_systemused by the
uio_mac_sun_moduleis recognized automatically.
-WF,-Drhd_r03: The compiler does not send switches starting with
-Dto the preprocessor but tries to interpret it itself - unlike all other compilers. Therefore, each switch (e.g.
-Drhd_r03) has to ``escaped'' with
-q64: Activate the 64-bit mode. In the default 32-bit mode a very small model (with total memory requirements far below the 2 GByte limit) might run. However, experienced IBM users might experiment instead with the compiler switches
-qsmallstack, with the UNIX commands
ulimit, or with the settings in the header of the batch script...
-O3: Choose optimization level. Higher levels that involve interprocedural analysis cause the compiler to stop with an error message.
-qarch=auto -qtune=auto -qcache=auto: To allow optimization specific for the local machine (default in the configure script). ``Cross compilation'' can be activated e.g. with
-qarch=pwr4 -qtune=pwr4(by setting an environment variable, e.g.
-Q -Q+...: To activate inlining and to specify the list of routines that should be inlined (see Sect. 3.7.2).
-qsmp=noauto:omp: Parallelization: OpenMP directives are activated.
A job script
rhd.job on the Loadleveler batch system on
io.cines.fr can be submitted with
The jobs in the queue for user
testuser can be checked with
A job with ID
n34.56789.0 can be canceled with