SGI UV300 Platform file
- dplace -x2 $command
- dplace is a tool for binding processes to cpus
Here is a brief description of options used in the config file:
- -x Provides the ability to skip placement of processes. is a bitmask. If
bit N of is set, then the N+1th process that is forked is not placed.
For example, setting the mask to 6 will cause the 2nd and 3rd processes from being
placed. The first process (the process named by the ) will be assigned to
the first cpu. The second and third processes are not placed. The fourth process is
assigned to the second cpu, etc.. This option is useful for certain classes of
threaded apps that spawn a few helper processes that typically do not use much cpu
time. (Hint: Intel OpenMP applications currently should be placed using -x 2. This
could change in future versions of OpenMP).
- KMP_STACKSIZE
- Specify stack size to be allocated for each thread.
- KMP_AFFINITY
- The value for the environment variable KMP_AFFINITY affects how the threads from an auto-parallelized program are scheduled across processors.
Specifying disabled completely disables the thread affinity interfaces. This forces the OpenMP run-time library to behave as if the affinity interface was not supported by the operating system. This includes the low-level API interfaces such as kmp_set_affinity and kmp_get_affinity, which have no effect and will return a nonzero error code.
- KMP_SCHEDULE
- Fine tune the load balancing of parallel loops that are statically scheduled under OpenMP with no chunk size specification.
Setting it to "static,balanced" results in (#iterations/#threads) iterations--rounded to the next lower integer--being allocated to most threads, with at most one additional iteration being allocated to some threads. Although the largest number of iterations assigned to any thread remains the same, this results in a more even sharing of iterations between threads, which may sometimes lead to a performance improvement relative to the default static thread distribution.
- OMP_DYNAMIC
- OMP_DYNAMIC=[ 1 | 0 ] Enables (1) or disables (0) the dynamic adjustment of the number of threads.
- Set stack size to unlimited
- The command "ulimit -s unlimited" is used to set the stack size limit to unlimited.
- Hyper-Threading (Default = "Enabled")
- This feature allows enabling/disabling of logical processor cores on processors supporting
Intel's Hyperthreading Technology.
- "Enabled" means each physical processor core operates as two logical processor cores.
- "Disabled" means each physical core operates as only one logical processor core.
- BT Mode (Default = "Force mode 0")
- The BT mode controls relative allocations of processor/QPI-related resources. UV 300
supports two modes of operation for the BT:
- "Force mode 0" optimizes for global memory references (best for non-NUMA-aware applications).
- "Auto-select" optimizes for local memory references (best for NUMA-aware applications).