はい、もちろん; 一般に、このようなシステムには、これらのように、これを行う方法についての指示があります。
(たとえば)それぞれ同じ時間がかかることがわかっている4x 4-cpuジョブがあり、(たとえば)それらを4つの異なるディレクトリで実行する場合(出力ファイルを追跡しやすくするため)、次を使用します。シェルアンパサンドを使用してそれぞれをバックグラウンドで実行し、すべてのバックグラウンドタスクが完了するのを待ちます。
(cd jobdir1; myexecutable argument1 argument2) &
(cd jobdir2; myexecutable argument1 argument2) &
(cd jobdir3; myexecutable argument1 argument2) &
(cd jobdir4; myexecutable argument1 argument2) &
wait
(ここにmyexecutable argument1 argument2
は、通常プログラムを実行するための単なるプレースホルダーがあります。使用する場合、mpiexec
または同様のものを使用する場合は、通常使用する場合と同じようにそこに入ります。OpenMPを使用している場合は、環境変数をエクスポートするOMP_NUM_THREADS
前に、上記の最初の行。
すべてが同じ時間かかるわけではないタスクが多数ある場合は、上記の(たとえば)4つ以上のジョブを割り当て、必要に応じてgnuparallelなどのツールにジョブを起動させるのが最も簡単です。答え。