Adapp: Code execution in interactive mode

Execution of a sequential code in interactive mode

The execution of a sequential program on Adapp in interactive mode is limited by the following:

  • Process CPU time: 30 minutes
  • Total memory for the job < 3.5 GB

If the program requires more resources than this, it is necessary to submit it in batch mode.

To know the limits of the interactive mode in detail:

$ ulimit -Sa

Execution of an MPI parallel code in interactive mode

The execution of a parallel MPI program in interactive mode, via the poe command, is not possible on Adapp: There is not an environment variable (or option for poe) equivalent to LoadLeveler keyword requirements = (Feature == “prepost”) which allows directing jobs on one of the 4 pre/post-processing nodes. All interactive parallel executions from Adapp will run on classic Ada nodes.

Therefore, you must submit jobs in batch mode.

Execution in interactive mode of a multi-thread parallel code with shared memory

The interactive execution of a parallel program with shared memory (parallelized with OpenMP, or automatically) on Ada is limited by the following:

  • Process CPU time: 30mn
  • Total memory for the job < 3.5 GB
  • Maximum number of threads: 4

If the program requires more resources than this, it is necessary to submit it in batch mode.

The following is an example of an interactive execution for an OpenMP program requiring 4 threads (OpenMP threads) :

$ export OMP_NUM_THREADS=4
$ ./prog-preprocessing

If your program was parallelized automatically, you can use the same commands with the same variable OMP_NUM_THREADS, to control the number of light processes.

Attention : If your code uses the OpenMP threadprivate directive, you will receive the following error message during the interactive execution:

OMP: Error #113: Too many threads to use threadprivate directive.
OMP: Hint: Consider setting KMP_ALL_THREADPRIVATE to a value larger than 128.
forrtl: error (76): Abort trap signal

To avoid this, you just need to add the -openmp-threadprivate=compat option to the compilation. It should be noted that this option can slightly decrease the code performance.

Execution of a hybrid MPI/OpenMP parallel code in interactive mode

The execution of a hybrid parallel program(MPI + threads) in interactive mode on Adapp is not possible for the same reason as given for the MPI programs (see above).