gpu ノード (nvidia) を備えたクラスターがあり、DC/OS 1.8 がデプロイされています。GPU アイソレーションを使用して GPU ノードでジョブ (バッチおよびスパーク) をスケジュールできるようにしたいと考えています。DC/OS は、GPU 分離をサポートする mesos 1.0.1 に基づいています。
2 に答える
DC/OS クラスターで GPU リソースのサポートを有効にするには、次の手順が必要です。
GPU ノードで mesos エージェントを構成する:
1.1. dcos -mesos-slave.service を停止します。systemctl stop dcos-mesos-slave.service
1.2. 次のパラメーターを/var/lib/dcos/mesos-slave-commonファイルに追加します。
# a comma separated list of GPUs (id), as determined by running nvidia-smi on the host where the agent is to be launched MESOS_NVIDIA_GPU_DEVICES="0,1"
# value of the gpus resource must be complied with number of ids above MESOS_RESOURCES= [ {"name":"ports","type":"RANGES","ranges": {"range": [{"begin": 1025, "end": 2180},{"begin": 2182, "end": 3887},{"begin": 3889, "end": 5049},{"begin": 5052, "end": 8079},{"begin": 8082, "end": 8180},{"begin": 8182, "end": 32000}]}} ,{"name": "gpus","type": "SCALAR","scalar": {"value": 2}}]
MESOS_ISOLATION=cgroups/cpu,cgroups/mem,disk/du,network/cni,filesystem/linux,docker/runtime,docker/volume,cgroups/devices,gpu/nvidia
1.3。dcos-mesos-slave.serviceを開始します。
systemctl start dcos-mesos-slave.service
mesos フレームワークで GPU_RESOURCES 機能を有効にします。
2.1. Marathonフレームワークは、オプションで起動する必要があります
--enable_features "gpu_resources"
2.2. Aurora スケジューラーは、オプションで起動する必要があります
-allow_gpu_resource
ノート。
Nvidia GPU をサポートする Mesos エージェントを実行するホストには、有効な Nvidia カーネル ドライバーがインストールされている必要があります。Nvidia CUDA ツールキットの一部として利用可能な、対応するユーザー レベルのライブラリとツールをインストールすることも強くお勧めします。Nvidia GPU を使用する多くのジョブは CUDA に依存しており、CUDA を含めないと、Mesos で実行できる GPU 対応ジョブのタイプが大幅に制限されます。