==== 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!