Grid Engineとはクラスタコンピューティングにおけるジョブ管理システムを担うミドルウェアです。
Grid EngineでGPUリソース管理をやってみようと思います。
NVMLを使わないので シンプルに登録したリソースを使っているか?使っていないか?だけの管理になります。
まずGrid Engineがインストールされ動作している状態から設定を追加します。
2ノード構成とします。
・node01 → GPU1枚
・node02 → GPU1枚
リソース属性を追加します。
# qconf -mc
#name shortcut type relop requestable consumable default urgency
#--------------------------------------------------------------------------------------
gpu gpu INT <= YES YES 0 0
次に各ノードの環境設定に追加します。
# qconf -me node01
complex_values gpu=1
# qconf -me node02
complex_values gpu=1
これで各ノードのGPU 1枚だけをGrid Engine上で管理できるはずです。
この設定でqsubしてみます。
投入スクリプトでリソース指定します。
#$ -l gpu=1
qsubするとジョブ実行されました。
qstatは以下で見れます。
# qstat -F gpu
以上