CUDA可視デバイスの選択方法(Linux)


  1. GPUデバイスの確認 最初に、システムに利用可能なGPUデバイスを確認しましょう。次のコマンドをターミナルで実行します。

    nvidia-smi

    このコマンドは、システム上の利用可能なGPUデバイスのリストを表示します。

  2. CUDA可視デバイスの選択 CUDAを使用するプログラムで特定のGPUデバイスを利用したい場合は、次の環境変数を設定します。

    export CUDA_VISIBLE_DEVICES=<device_index>

    <device_index>は、利用したいGPUデバイスのインデックス番号です。インデックスは0から始まり、複数のデバイスがある場合はカンマで区切って指定することもできます。

    たとえば、2番目のGPUデバイスを利用する場合は、次のように設定します。

    export CUDA_VISIBLE_DEVICES=1

    この環境変数を設定することで、CUDAを使用するプログラムは指定したGPUデバイスのみを利用するようになります。

  3. コード例 以下に、PythonでCUDA可視デバイスを選択するサンプルコードを示します。

    import os
    os.environ["CUDA_VISIBLE_DEVICES"] = "1"  # 2番目のGPUデバイスを選択
    import torch
    # CUDAデバイスの確認
    device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
    print("使用するデバイス:", device)
    # ここからプログラムの実行
    # ...

    このコードでは、os.environ["CUDA_VISIBLE_DEVICES"]を使用してCUDA可視デバイスを選択し、torch.device("cuda")を使用して選択したデバイスを指定します。

以上が、Linux環境でCUDA可視デバイスを選択する方法の概要です。この方法を使用することで、CUDAを活用した高性能な並列計算を行うプログラムを開発することができます。