The IPRC sgi Altix has 48 cpu (1.3 Ghz) and 48 GB of memory.
Each cpu has a peak speed of 5.2 Gflops.
The operating system is
Linux,
a free Unix version developed by
Linus Torvalds, with some enhancements by sgi.
Before considering running the code in parallel it should be optimized for a single cpu. Try a subset for of the following options to see if it increased the performance of the code:
ifort -tpp2 -ipo -O3 -IPF_fma -IPF_fltacc -align mycode.f
The default optimization level is -O2. Check the results if you use -O3. More optimization options are available. Consult the Intel compiler guide.
Compiling a code with OpenMP directives requires
ifort -openmp mycode.f
in addition to other options. Without this option the directives are ignored, but the code is compiled for a single cpu. Note that the -mp option is unrelated to parallel coding (-unlike on the sgi 2000/3000), but about precision.
Parallelization of a code may speed up the execution of a code. Compile your fortran code using
ifort -O3 -parallel mycode.f
where the highest possible optimization (- O3) is shown in the examples (again, check your results using this option!).
For further guidance on running parallel code see our brief parallelization hints.
When running a parallel job using OpenMP on the Altix use
setenv OMP_NUM_THREADS 4
to run on 4 cpus. To avoid switching between cpus, it is possible to ask for specific cpus using dplace:
nohup dplace -x6 -c0-3 mycode > run.log &
will run the executable mycode on cpu 0 to 3 as a background job. The nohup makes sure that you can log out without the job dying. The example is for an OpenMP job. For MPI jobs replace -x6 with -s1. Check which cpus already are assigned to a job by using the command dplace -q. For additional information see sgi Linux tuning
The Altix has little endian byte order while the other sgis and Suns have big endian ordering. To read and write all binary files as big endian, use the command
setenv F_UFMTENDIAN big
before running a job.
For additional help using the Altix:
Altix Software (at NASA Advanced Supercomputing)
Tommy G. Jensen tjensen@hawaii.edu
Last update: March 31, 2005