EIC TOP

並列計算サーバ

  • 並列計算サーバはSGI ICE-Xの144ノードで構成されています。
  • 1ノードあたり、2ソケット(24コア)の128GBのメモリを搭載した計算ノードが18ノードづつFDRスイッチに接続されており、このノード群をeicp1~eicp8と呼んでいます。
  • 並列計算サーバでは、大規模なMPI並列計算、MPI/OpenMPのハイブリッド計算が利用できます。
  • 原則的として、18ノードを1つのジョブで占有することになっており、以下のようなジョブでの利用を想定しています。
    • 18ノードx 24(MPIプロセス)
    • 18ノードx 2(MPIプロセス)x12(OpenMPスレッド)
    • 18ノードx 12(MPIプロセス)
    • 18ノードx 2(MPIプロセス)x6(OpenMPスレッド)
  • ここでは、ジョブクラスG、Hでバッチジョブを投入する方法を紹介します。

MPI並列計算

  • スクリプト例(ジョブクラスGで432並列のMPIプログラム(xhpl)を実行)
    #!/bin/csh
    #$ -ac P=24
    #$ -ac n=432
    #$ -ac T=1
    #$ -jc G
    #$ -cwd
    mpiexec_mpt -np 432 dplace -s1 ./xhpl
    EICシステムではMPIジョブの実行の際、mpiexec_mptコマンドを使用してください。
    並列数432を-ac nとmpiexec_mptの引数に指定します。-ac Pは各ノードが搭載しているコア数24を指定します。(-ac P=24は原則固定です)
    また、スレッド数には -ac T=1を指定してください。これはハイブリッドでないことを意味します。MPIの場合は固定です。

    ※432以外のMPIも流す場合も -ac n=432を指定してください。実際に利用するMPI数をmpiexec_mpt -np 256と指定することにより256MPI並列で実行できます。
    (ただし、432コアを確保して、空いているコアは他のジョブでは利用できません。)

MPI/OpenMPハイブリッド並列計算

  • スクリプト例(ジョブクラスHでMPIが36プロセス、OpenMP12スレッドのハイブリッドプログラム(a.out)を実行)
    #!/bin/csh
    #$ -ac P=2
    #$ -ac n=432
    #$ -ac T=12
    #$ -jc H
    #$ -cwd
    source ${TMP}/hybrid-mpi-$JOB_ID/env.csh
    mpiexec_mpt -np $TOTAL_PROCS omplace -nt $OMP_NUM_THREADS ./a.out
    EICシステムではMPIジョブの実行の際、mpiexec_mptコマンドを使用してください。
    合計の並列数432を-ac nの引数に指定します。-ac Pは各ノードで使用するMPIプロセス2を指定します。
    また、スレッド数には -ac T=12を指定してください。これはOpenMPのスレッド数を意味します。
    以下の行は自動的にMPIプロセス数、OpenMPスレッド数を割り当てます。
    source ${TMP}/hybrid-mpi-$JOB_ID/env.csh
    mpiexec_mpt -np $TOTAL_PROCS omplace -nt $OMP_NUM_THREADS ./a.out
    mpiexec_mptやomplaceに実際の値を入れても構いません。ここでは自動的に36と12が入ります。
    Tの値に指定できるのは6、12です。PとTの積が24でないとジョブは投入できません

MPIコア飛ばし

  • スクリプト例(ジョブクラスGで各ノードにMPIが12プロセスx18ノードで合計216のMPI並列(a.out)を実行)
    #!/bin/csh
    #$ -ac P=12
    #$ -ac n=216
    #$ -ac T=1
    #$ -jc G
    #$ -cwd
    setenv MPI_DSM_CPULIST "0-23/2:allhosts"
    mpiexec_mpt -np 216 ./xhpl

ハイブリッドコア飛ばし

  • スクリプト例(ジョブクラスHでMPIが36プロセス、OpenMP6スレッドのハイブリッドプログラム(a.out)を実行)
    #!/bin/csh
    #$ -ac P=2
    #$ -ac n=216
    #$ -ac T=6
    #$ -jc H
    #$ -cwd
    source ${TMP}/hybrid-mpi-$JOB_ID/env.csh
    mpiexec_mpt -np $TOTAL_PROCS omplace -nt $OMP_NUM_THREADS -c 0-:st=2 ./a.out

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ