joblibとmultiprocessingを使用してコードの一部を並行して実行するPython コードがあります。これをデスクトップで問題なく実行できます。タスク マネージャーを使用して、4 つのコアすべてを使用し、コードを並行して実行していることを確認できます。
最近、100 以上の 20 コア ノードを備えた HPC クラスターにアクセスできることを知りました。クラスターは、ワークロード マネージャーとして SLURMを使用します。
最初の質問は、クラスターで並列化された Python コードを実行することは可能ですか?
もし可能ならば、
私が持っている Python コードは、クラスターで実行するためにまったく変更する必要がありますか?
コードの並列化された部分を 4 つのコア (または 4 つのノード) で実行する必要があることを伝えるために、ジョブ送信ファイルにどの #SBATCH 命令を入れる必要がありますか?
私がアクセスできるクラスターには、次の属性があります。
PARTITION CPUS(A/I/O/T) NODES(A/I) TIMELIMIT MEMORY CPUS SOCKETS CORES
standard 324/556/16/896 34/60 5-00:20:00 46000+ 8+ 2 4+