このセットアップは、ローカルマシンで Experiments を実行するユーザーや、SSH で接続したリモートマシンから Launch ジョブを送信するユーザーによく利用されます。
docker run <image-uri> コマンドでビルドされます。キューの設定は、docker run コマンドに渡される追加の引数として解釈されます。
Docker キューの設定
Launch キューの設定(Docker ターゲットリソース用)では、docker run CLI コマンドで定義されているものと同じオプションを使用できます。
エージェントはキューの設定で定義されたオプションを受け取ります。次に、エージェントは受け取ったオプションと Launch ジョブの設定によるオーバーライドをマージし、ターゲットリソース(この場合はローカルマシン)で実行される最終的な docker run コマンドを生成します。
以下の 2 つの構文変換が行われます:
- 繰り返されるオプションは、キューの設定内でリストとして定義されます。
- フラグオプションは、キューの設定内で値が
trueの Boolean として定義されます。
docker run コマンドが実行されます:
MY_EXISTING_ENV_VAR という環境変数が存在する場合、その環境変数はコンテナ内でも利用可能です。これは、キューの設定に公開せずに他の設定キーを使用したい場合に便利です。
docker run コマンドの --gpus フラグを使用すると、Docker コンテナで使用可能な GPU を指定できます。gpus フラグの使用方法の詳細については、Docker ドキュメントを参照してください。
- Docker コンテナ内で GPU を使用するには、NVIDIA Container Toolkit をインストールしてください。
-
コードや Artifacts をソースとするジョブからイメージをビルドする場合、エージェントが使用するベースイメージをオーバーライドして NVIDIA Container Toolkit を含めることができます。
例えば、Launch キュー内でベースイメージを
tensorflow/tensorflow:latest-gpuにオーバーライドできます:
キューの作成
W&B CLI を使用して、計算リソースとして Docker を使用するキューを作成します:- Launch ページに移動します。
- Create Queue ボタンをクリックします。
- キューを作成する Entity を選択します。
- Name フィールドにキューの名前を入力します。
- Resource として Docker を選択します。
- Configuration フィールドで Docker キューの設定を定義します。
- Create Queue ボタンをクリックしてキューを作成します。
ローカルマシンでの Launch エージェントの設定
Launch エージェントの設定は、launch-config.yaml という名前の YAML 設定ファイルで行います。デフォルトでは、W&B は ~/.config/wandb/launch-config.yaml にある設定ファイルをチェックします。Launch エージェントを起動する際に、オプションで別のディレクトリーを指定することもできます。
W&B CLI を使用して、Launch エージェントの主要な設定オプション(最大ジョブ数、W&B Entity、Launch キューなど)を指定することもできます(設定 YAML ファイルの代わりとして)。詳細は
wandb launch-agent コマンドを参照してください。エージェントの主要な設定オプション
以下のタブでは、W&B CLI および YAML 設定ファイルを使用して、エージェントの主要な設定オプションを指定する方法を示します:- W&B CLI
- 設定ファイル
Docker イメージビルダー
マシンの Launch エージェントは、Docker イメージをビルドするように設定できます。デフォルトでは、これらのイメージはマシンのローカルイメージリポジトリに保存されます。Launch エージェントで Docker イメージのビルドを有効にするには、Launch エージェント設定のbuilder キーを docker に設定します:
launch-config.yaml
builder キーを noop に設定します。
launch-config.yaml