Parallel computing. Running jobs in BATCH.

The LIT computer farm comprises  279  2 and 4 nuclear machines connected by a 1Gb Ethernet communication environment. Since 2-and 4-core processors are independent processors on a single chip, in fact, 1104 64-bit CPUs are available to JINR users.

This number includes a farm for parallel computing, consisting of 20 28-nuclear machines connected in addition to 2xInfiniband.
Users for parallel computing are available 560 cores.

Software:

OS Scientific Linux release 6.9 (Carbon),
compilers:          g77 / gcc / g ++ – GNU Fortran 77,
                             C and C ++ compilers version 4.4.7;
                             gfortran GNU Fortran 95
                             ifort / icc / icpc – Intel Fortran,
                            C, C ++ compilers version 13.1.3
at  an interactive  farm for NICA, MPD:
                            devtoolset-4 (gcc 5.1, debugger, etc.)

GCC (GNU Compiler Collection) – a set of freely available compilers for various programming languages ​​(C / C ++ / Fortran, etc.). They are used as standard compilers for Unix-like operating systems.

Intel C / C ++ / Fortran Compilers are new generation compilers, allowing to provide high performance on Intel processors. Intel compilers are complemented by effective tools for developing multithreaded code that support the OpenMP standard.

Intel Math Kernel Library (Intel MKL) provides a set of optimized mathematical functions that allow you to create high-speed applications for Intel processors.

Libraries include linear algebraic functions (LAPACK and BLAS) of Fourier Formation (FFT), a package of vector mathematics VML.

For more details, see the documentation on the CICC farm: /opt/intel/Compiler/11.1/056/Documentation/en_US

MPI libraries for programming languages ​​C, C ++ and Fortran are installed to develop parallel programs using the MPI (Message Passing Interface) package. To compile and build parallel programs using the MPI package, use the following commands:

mpicc – for programs written in C;
mpiCC – for programs written in C ++;

mpif77 and mpif90 – for programs written in Fortran;
mpiexec – run the program for execution on all CPUs.

More information about commands and compilers can be found by running the command man.

Run parallel jobs.

To prepare and account for parallel jobs running MPI at  the farm, compilers mpicc, mpif77, mpic ++  and mpif90 are available.

When running tasks, you must first determine where to start them. If the files are small, then it is more convenient to work within the home directory, which is located in the AFS (distributed high-security file system), and there to store all the files. If there are or can appear large files (and the space in the home directory is limited to 50 MB), or there are files common for several users, then it is better to store them, for example, on scratch (which is not in AFS), and for the account – copy to the counters machine in a temporary directory whose address is in the variable $ TMPDIR.