メインコンテンツまでスキップ

エージェントを並列化する

マルチコアやマルチGPUマシンで W&B スイープエージェントを並列化します。始める前に、W&B スイープを初期化しておくことを確認してください。W&B スイープの初期化方法について詳しくは、Initialize sweeps を参照してください。

マルチCPUマシンでの並列化

ユースケースに応じて、次のタブを参照して、CLIを使ったW&Bスイープエージェントの並列化方法や、Jupyter Notebookでの方法を学習してください。

ターミナルを使って、wandb agent コマンドで W&B スイープエージェントを複数のCPUに並列化します。スイープを初期化する際に返されたスイープIDを指定してください。

  1. ローカルマシン上で複数のターミナルウィンドウを開きます。
  2. 下のコードスニペットをコピー&ペーストし、sweep_id をあなたのスイープIDに置き換えます:
wandb agent sweep_id

複数のGPUを搭載したマシンでの並列化

CUDA Toolkitを使用して、ターミナルで複数のGPUにW&Bスイープエージェントを並列化する手順に従います。

  1. ローカルマシンで複数のターミナルウィンドウを開きます。
  2. W&Bスイープジョブ( wandb agent)を開始するときに、 CUDA_VISIBLE_DEVICESで使用するGPUインスタンスを指定します。 CUDA_VISIBLE_DEVICES に使用するGPUインスタンスに対応する整数値を割り当てます。

たとえば、ローカルマシンに2つのNVIDIA GPUがある場合、ターミナルウィンドウを開いて CUDA_VISIBLE_DEVICES0 に設定します( CUDA_VISIBLE_DEVICES=0)。次の例のsweep_IDを、W&Bスイープを初期化したときに返されたW&BスイープIDに置き換えます:

ターミナル1

CUDA_VISIBLE_DEVICES=0 wandb agent sweep_ID

もう一つのターミナルウィンドウを開きます。CUDA_VISIBLE_DEVICES1に設定します(CUDA_VISIBLE_DEVICES=1)。手前のコードスニペットで言及されたsweep_IDに同じW&BスイープIDを貼り付けます。

ターミナル2

CUDA_VISIBLE_DEVICES=1 wandb agent sweep_ID
Was this page helpful?👍👎