This version (2024/10/24 10:28) is a draft.
Approvals: 0/1The Previously approved version (2013/05/29 16:29) is available.
Approvals: 0/1The Previously approved version (2013/05/29 16:29) is available.
Sequential codes
Accounting on VSC-2 is done by nodes, thus sequential jobs using one core only are costly.
To use all 16 cores of a node, it is recommended to start 16 processes per node. This can be done easily by a shell script like
#!/bin/bash for i in `seq -w 00 15`; do ./my_program input_parameter_647${i}_35 & done # wait for all background jobs, then terminate wait
Another form of the loop could be
for (( i=0; i<16; i++ )); do ./my_program ${i} & done wait
or, with pinning to processors, which is highly recommended for performance reasons,
for (( i=0; i<16; i++ )); do taskset -c $i ./my_program ${i} & done wait
or, with pinning to NUMA nodes (consisting of four cores each), with equally good performance,
for i in {0..15}; do numactl -N $((i/4)) ./my_program ${i} & done wait
Please remember the memory limit of 32GB per node!