日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

GPU セットアップ

寄稿者

GATK ツールは、公開時点で、オンプレミスでの GPU ベースの実行をネイティブでサポートしていません。以下のセットアップとガイダンスは、 GATK 用の PCIe メザニンカードを使用して、背面取り付けの NVIDIA Tesla P6 GPU で FlexPod を使用する場合の簡単な方法を読者が理解できるようにします。

次の Cisco Validated Design ( CVD )をリファレンスアーキテクチャとして使用し、 FlexPod 環境をセットアップして GPU を使用するアプリケーションを実行できるようにしました。

このセットアップの重要なポイントを次に示します。

  1. UCS B200 M5 サーバのメザニンスロットに PCIe NVIDIA Tesla P6 GPU を使用しました。

    エラー:グラフィックイメージがありません

    エラー:グラフィックイメージがありません

  2. このセットアップでは、 NVIDIA パートナーポータルに登録し、コンピューティングモードで GPU を使用できる評価用ライセンス(使用権)を取得しました。

  3. NVIDIA パートナーの Web サイトから、必要な NVIDIA vGPU ソフトウェアをダウンロードしました。

  4. エンタイトルメント「 *.bin 」ファイルを NVIDIA パートナーの Web サイトからダウンロードしました。

  5. NVIDIA vGPU ライセンスサーバをインストールし、 NVIDIA パートナーサイトからダウンロードした「 *.bin 」ファイルを使用してライセンスサーバに使用権を追加しました。

  6. NVIDIA パートナーポータルで、導入環境に適した NVIDIA vGPU ソフトウェアのバージョンを選択してください。このセットアップでは、ドライバのバージョン 460.73.02 を使用しました。

  7. このコマンドは、をインストールします "NVIDIA vGPU Manager の略" ESXi で。

    [root@localhost:~] esxcli software vib install -v /vmfs/volumes/infra_datastore_nfs/nvidia/vib/NVIDIA_bootbank_NVIDIA-VMware_ESXi_7.0_Host_Driver_460.73.02-1OEM.700.0.0.15525992.vib
    Installation Result
    Message: Operation finished successfully.
    Reboot Required: false
    VIBs Installed: NVIDIA_bootbank_NVIDIA-VMware_ESXi_7.0_Host_Driver_460.73.02-1OEM.700.0.0.15525992
    VIBs Removed:
    VIBs Skipped:
  8. ESXi サーバのリブート後、次のコマンドを実行してインストールを検証し、 GPU の健全性を確認します。

    [root@localhost:~] nvidia-smi
    Wed Aug 18 21:37:19 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.73.02    Driver Version: 460.73.02    CUDA Version: N/A      |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  Tesla P6            On   | 00000000:D8:00.0 Off |                    0 |
    | N/A   35C    P8     9W /  90W |  15208MiB / 15359MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A   2812553    C+G   RHEL01                          15168MiB |
    +-----------------------------------------------------------------------------+
    [root@localhost:~]
  9. vCenter を使用 "設定" グラフィックデバイスの設定は「 Shared Direct 」になります。

    エラー:グラフィックイメージがありません

    エラー:グラフィックイメージがありません

  10. RedHat VM のセキュアブートが無効になっていることを確認します。

  11. VM 起動オプションファームウェアが EFI ( "参照( Ref )")。

    エラー:グラフィックイメージがありません

  12. 次のパラメータが VM オプションの詳細編集設定に追加されていることを確認します。「 pciPassthru.64bitMMIOSizeGB 」パラメータの値は、 VM に割り当てられた GPU のメモリと数によって異なります。例:

    1. VM に 32GB V100 GPU が 4 つ割り当てられている場合は、この値を 128 にします。

    2. VM に 16GB P6 GPU が 4 つ割り当てられている場合、この値は 64 である必要があります。

      エラー:グラフィックイメージがありません

    エラー:グラフィックイメージがありません

  13. vCenter で新しい PCI デバイスとして vGPU を仮想マシンに追加する場合は、 PCI デバイスタイプとして NVIDIA GRID vGPU を選択してください。

  14. 使用している GPU 、 GPU メモリ、および使用目的を調整する適切な GPU プロファイルを選択します。たとえば、グラフィックスとコンピューティングです。

    エラー:グラフィックイメージがありません

  15. Red Hat Linux VM で、次のコマンドを実行して NVIDIA ドライバをインストールできます。

    [root@genomics1 genomics]#sh NVIDIA-Linux-x86_64-460.73.01-grid.run
  16. 次のコマンドを実行して、正しい vGPU プロファイルが報告されていることを確認します。

    [root@genomics1 genomics]# nvidia-smi –query-gpu=gpu_name –format=csv,noheader –id=0 | sed -e ‘s/ /-/g’
    GRID-P6-16C
    [root@genomics1 genomics]#
  17. リブート後は、正しい NVIDIA vGPU がドライバのバージョンと一緒に報告されていることを確認します。

    [root@genomics1 genomics]# nvidia-smi
    Wed Aug 18 20:30:56 2021
    +-----------------------------------------------------------------------------+
    | NVIDIA-SMI 460.73.01    Driver Version: 460.73.01    CUDA Version: 11.2     |
    |-------------------------------+----------------------+----------------------+
    | GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
    | Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
    |                               |                      |               MIG M. |
    |===============================+======================+======================|
    |   0  GRID P6-16C         On   | 00000000:02:02.0 Off |                  N/A |
    | N/A   N/A    P8    N/A /  N/A |   2205MiB / 16384MiB |      0%      Default |
    |                               |                      |                  N/A |
    +-------------------------------+----------------------+----------------------+
    +-----------------------------------------------------------------------------+
    | Processes:                                                                  |
    |  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
    |        ID   ID                                                   Usage      |
    |=============================================================================|
    |    0   N/A  N/A      8604      G   /usr/libexec/Xorg                  13MiB |
    +-----------------------------------------------------------------------------+
    [root@genomics1 genomics]#
  18. vGPU グリッド構成ファイルの VM にライセンスサーバの IP が設定されていることを確認してください。

    1. テンプレートをコピーします。

      [root@genomics1 genomics]# cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.conf
    2. /etc/nvidia /rid ファイルを編集し、ライセンス・サーバの IP アドレスを追加して、機能タイプを 1 に設定します。

       ServerAddress=192.168.169.10
       FeatureType=1
  19. VM を再起動すると、次のように、ライセンスサーバーのライセンスクライアントの下にエントリが表示されます。

    エラー:グラフィックイメージがありません

  20. GATK および Cromwell ソフトウェアのダウンロードの詳細については、「 Solutions Setup 」セクションを参照してください。

  21. GATK がオンプレミスで GPU を使用できるようになると、ワークフロー概要言語は「 * 」になります。wdl には、次に示すランタイム属性があります。

    task ValidateBAM {
      input {
        # Command parameters
        File input_bam
        String output_basename
        String? validation_mode
        String gatk_path
        # Runtime parameters
        String docker
        Int machine_mem_gb = 4
        Int addtional_disk_space_gb = 50
      }
      Int disk_size = ceil(size(input_bam, "GB")) + addtional_disk_space_gb
      String output_name = "${output_basename}_${validation_mode}.txt"
      command {
        ${gatk_path} \
          ValidateSamFile \
          --INPUT ${input_bam} \
          --OUTPUT ${output_name} \
          --MODE ${default="SUMMARY" validation_mode}
      }
      runtime {
        gpuCount: 1
        gpuType: "nvidia-tesla-p6"
        docker: docker
        memory: machine_mem_gb + " GB"
        disks: "local-disk " + disk_size + " HDD"
      }
      output {
        File validation_report = "${output_name}"
      }
    }