GNU Parallelを使用するときに各ノードで起動(または解放)スクリプトを実行する方法はありますか?
たとえば、複数のマルチコアノード(特にPBSを使用して共有HPCクラスタで割り当てられているノード)間で多数のシングルスレッドジョブを分散(およびバランス)したいとします。各新しいノードに対してジョブ(環境モジュールのロードなど)を実行する前に、いくつかの設定コマンドを一度実行する必要があります。
答え1
あなたはそれを使用できますか--nonall
?
parallel --nonall --slf $PBS_NODEFILE setup.sh
環境が設定されている場合は機能しません。これを行うには、次のことを試すことができます。
env_parallel --record-env
[load the environment]
seq 100 | env_parallel --slf $PBS_NODEFILE --env _ echo do the job