差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
サーバ関連:slurm [2018/12/10 12:51] – mumeiyamibito | サーバ関連:slurm [2019/03/01 15:53] (現在) – 削除 mumeiyamibito | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== Slurm ====== | ||
- | ===== 概要 ===== | ||
- | * Torque や Sun Grid Engine のようなジョブ管理ツール。 | ||
- | * 現状、ドキュメントは Torque の方が多く、Slurm は圧倒的にドキュメントが少なく、日本語ドキュメントはさらに少ない…。 | ||
- | * Ubuntu のデフォルトリポジトリには登録されている。 | ||
- | ===== プログラム ===== | ||
- | * '' | ||
- | * '' | ||
- | * 参考サイト: | ||
- | |||
- | ===== インストール方法 ===== | ||
- | * ここでは、Ubuntu 16.04 ベースで、ソースからコンパイルする方法を紹介する。 | ||
- | |||
- | - 認証システム munge をインストールする。\\ <code bash> | ||
- | $ sudo apt-get install libmunge-dev libmunge2 munge | ||
- | </ | ||
- | * 通常はインストール時に認証鍵が生成されるが、されない場合は以下のコマンドをマスターノードでのみ行う (マスターノードの認証鍵を計算機ノードが参照するため)。\\ <code bash> | ||
- | $ sudo create-munge-key | ||
- | </ | ||
- | - インストール時にスタートアップの問題で失敗するので、修正する。\\ <code bash> | ||
- | $ sudo systemctl edit --system --full munge | ||
- | </ | ||
- | - '' | ||
- | - 再度インストールする。\\ <code bash> | ||
- | $ sudo apt-get install -f | ||
- | </ | ||
- | - slurm を https:// | ||
- | * ここでは、'' | ||
- | * ダウンロードしたファイルは ''/ | ||
- | - 展開する。\\ <code bash> | ||
- | $ cd /tmp | ||
- | $ tar axvf slurm-17.02.1-2.tar.gz | ||
- | </ | ||
- | - インストールする。\\ <code bash> | ||
- | $ cd slurm-17.02-1.2 | ||
- | $ ./configure | ||
- | $ make -j 4 | ||
- | $ sudo make install | ||
- | </ | ||
- | - 設定ファイルをコピーする。\\ <code bash> | ||
- | $ sudo cp etc/ | ||
- | </ | ||
- | - 設定ファイルを編集する。 | ||
- | * 詳しくはシステムの設定を参照 | ||
- | - 必要なディレクトリを作成する。\\ <code bash> | ||
- | $ sudo mkdir -p / | ||
- | $ sudo mkdir -p / | ||
- | </ | ||
- | * '' | ||
- | * 設定を容易に行う別の方法として、'' | ||
- | - 自動起動するようにする。 | ||
- | * マスターノード (マスターノードで計算させない場合は '' | ||
- | $ sudo cp etc/ | ||
- | $ sudo cp etc/ | ||
- | $ sudo systemctl enable slurmctld.service | ||
- | $ sudo systemctl enable slurmd.service | ||
- | </ | ||
- | * 計算ノード\\ <code bash> | ||
- | $ sudo cp etc/ | ||
- | $ sudo systemctl enable slurmd.service | ||
- | </ | ||
- | - サービスを起動する。 | ||
- | * マスターノード (マスターノードで計算させない場合は '' | ||
- | $ sudo systemctl start slurmctld.service | ||
- | $ sudo systemctl start slurmd.service | ||
- | </ | ||
- | * 計算ノード\\ <code bash> | ||
- | $ sudo systemctl start slurmd.service | ||
- | </ | ||
- | - 起動しているかを確認する。 | ||
- | * マスターノード | ||
- | $ sudo systemctl status slurmctld.service | ||
- | $ sudo systemctl status slurmd.service | ||
- | </ | ||
- | * 計算ノード\\ <code bash> | ||
- | $ sudo systemctl status slurmd.service | ||
- | </ | ||
- | - ジョブを投入してテストする。\\ <code bash> | ||
- | $ srun -l sleep 60 & | ||
- | $ srun -l sleep 60 & | ||
- | $ srun -l sleep 60 & | ||
- | $ srun -l sleep 60 & | ||
- | $ srun -l sleep 60 & | ||
- | $ squeue | ||
- | JOBID PARTITION | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | ===== システムの設定 ===== | ||
- | * マスターノード (master)、計算ノード (calc01, calc02, calc03) の例.\\ <code conf slurm.conf> | ||
- | ControlMachine=master | ||
- | ControlAddr=192.168.1.254 | ||
- | : | ||
- | SlurmUser=root | ||
- | SlurmdUser=root | ||
- | : | ||
- | SelectType=select/ | ||
- | SelectTypeParameters=CR_CPU | ||
- | : | ||
- | PreemptType=preempt/ | ||
- | PreemptMode=SUSPEND, | ||
- | : | ||
- | # Node configuration | ||
- | # Configure support for our four GPUs | ||
- | GresTypes=gpu, | ||
- | |||
- | # COMPUTE NODES | ||
- | NodeName=master | ||
- | NodeName=calc01 | ||
- | NodeName=calc02 | ||
- | NodeName=calc03 | ||
- | |||
- | # Partition configuration | ||
- | PartitionName=ALL | ||
- | PartitionName=CPU1 | ||
- | PartitionName=CPU2 | ||
- | PartitionName=CPU3 | ||
- | PartitionName=CPU1_h Nodes=master MaxTime=UNLIMITED PriorityTier=2 State=UP | ||
- | PartitionName=CPU2_h Nodes=calc01 MaxTime=UNLIMITED PriorityTier=2 State=UP | ||
- | PartitionName=CPU3_h Nodes=calc02, | ||
- | </ | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * 1つ目のフィールド: | ||
- | * 2つ目のフィールド: | ||
- | * 3つ目のフィールド: | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * root や slurmUser に指定されているユーザは適用されない | ||
- | * '' | ||
- | * '' | ||
- | * * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * 参考サイト: | ||
- | * slurm.conf: [[https:// | ||
- | * GPU: [[https:// | ||
- | * 割り込み: | ||
- | |||
- | |||
- | {{tag> |