Homogeneous / Heterogeneous Resources

Homogeneous jobs

All phases require the same amount of resources.

#PBS -l select=32:mem=2625mb

Or

#PBS -l select=16:ncpus=2:mpiprocs=2:mem=5250mb

Both requests need exactly the same amount of resources. Selecting one of them depends on what your application does and what the other users/jobs do.

Heterogeneous job

  • This occured  for different analysis  :
    • cosimulation
    • if several steps come one after another (sequential/parallel) such as mesh generation or  data merge, and parallel computations.
    • if one process (often the master ) deals with several scripts,  bash, python, mpirun/proxy ... to chain different analysis.
    • ...
  • Do different chunks for each part of the job and let memory monitoring be done per chunk.

As an example, consider the following analysis where the first step is sequential and requires 63000mb of memory and where the second step is parallel and requires homogeneously 2625mb per MPI process. This can be select following 2 ways:

#PBS -l select=1:ncpus=1:mpiprocs=1:mem=63000mb
+31:npcus=1:mpiprocs=1:mem=2625mb

Or

#PBS -l select=1:ncpus=12:mpiprocs=12:mem=63000mb\
+20:npcus=1:mpiprocs=1:mem=2625mb

In the first case the total amount of memory required is 144375mb. In the second one, the amount is 115500mb.