HPCシステムズではエンジニアを募集しています。詳しくはこちらをご覧ください。
HPCシステムズのエンジニア達による技術ブログ

Tech Blog

Blackwell GPU RTX Pro 6000でMIGを有効化する方法

Blackwell世代のGPU RTX Pro 6000ではMIGによるリソース分割を有効化することができます。ただ、MIGを有効化するために必要な手順がこれまでと異なりますので、こちらで紹介します。

MIGとは

NVIDIAのMIG(Multi-Instance GPU)は、データセンター向けGPUに導入された機能で、1枚の物理GPUを複数の論理GPUインスタンスに分割して独立して利用できるようにするものです。主にAmpere世代のA100やHopper世代のH100などで提供されるこの仕組みは、GPU内部の計算ユニットやメモリ帯域、キャッシュといったハードウェア資源をハードウェアレベルで分割し、それぞれを独立した論理デバイスとしてオペレーティングシステムやコンテナに見せる点が特徴です。これにより、複数のユーザやワークロードが同一の物理GPUを安全かつ効率的に共有できるようになります。

MIGの最大の利点は、利用効率とワークロード分離の両立にあります。従来、小規模な推論や軽量な実験にもGPU全体を割り当てるとリソースが遊んでしまいがちでしたが、MIGを使えば物理GPUを複数のサイズに分割して並列に稼働させられるため、短時間で終了するジョブや低負荷の推論サービスを同時に多数回す場合でも高い稼働率を維持できます。また、各インスタンスには専有の計算ユニットやメモリ帯域が割り当てられるため、あるジョブが他のジョブのメモリやキャッシュを奪うリスクが低く、品質保証された性能を提供しやすくなります。

 

RTX Pro 6000でMIGを有効化する方法

※下記の検証ではRTX Pro 6000 Blackwell Max-Qを使用しております。

Blackwell世代からデータセンター向けではないGPUであるRTX 6000 ProでもMIGによるリソース分割が可能になりました。最大で4分割まで可能であり、下記のような分割構成で利用することができます。詳しくはNVIDIAのMIG User Guideをご確認ください。

ただ、これまでのデータセンター用のGPUとは異なり、追加の設定変更が必要になりますので、
この記事で紹介します。手順は先ほどのNVIDIAのサイトの[10.1.1. Additional Prerequisites for RTX PRO Blackwell GPUs]に記載されている内容を元に作成しました。
設定の際にはNGCアカウントへの登録が必要となります。

0. NVIDIA Display Mode Selector Toolにアクセスし、下部のJoin Nowを選択して下さい。

NGCアカウントの登録が済んでいれば、下記のページに飛びます。

Member areaを押してください。
 

アグリーメントにチェックを入れた後、Downloadを押してください。
ダウンロードしたファイルをMIGを有効化したいサーバー上に置いてください。

※弊社検証時には/home/hpc/workというディレクトリに置きました。

※弊社検証時にはNVIDIA-Display-Mode-Selector-Tool-1.72.0-July25.zipという名称のzipファイルがダウンロードされました。ファイル名は今後更新されていく可能性がございます。

※配置は

 

1.ファイルを置いたディレクトリに移動し、ファイルが存在することを確認する

$ cd /home/hpc/work
$ ls
NVIDIA-Display-Mode-Selector-Tool-1.72.0-July25.zip

 

2.zipファイルを解凍する

$ unzip NVIDIA-Display-Mode-Selector-Tool-1.72.0-July25.zip

※ファイル名は実際のファイル名に置き換えてください。

 

3.解凍して作成されたディレクトリに移動する

$ cd NVIDIA\ Display\ Mode\ Selector\ Tool\ -\ 1.72.0-July25

※移動先のディレクトリ名は実際のディレクトリ名に置き換えてください。

$ cd linux/x64

※Ubuntu24.04の場合64bit OSのためx64ディレクトリにあるdisplaymodeselectorを使用します。x86ディレクトリではないので注意してください。

 

4.displaymodeselectorに実行権限を追加する

$ chmod +x displaymodeselector

 

5.RTX PRP 6000のGPU IDを確認する

$ nvidia-smi

※NVIDIA RTX PRO 6000Blac…という表記が見えるはずです。この表記の左側の数字がGIDです。下記の例ではNVIDIA RTX PRO 6000が1枚搭載されており、そのGPU IDは0となっております。

※合わせてMIGがDisableになっていることも確認する。

 

 

6.NVIDIA RTX PRO 6000それぞれに対してdisplaymodeselectorでcomputeモードにする

$ sudo ./displaymodeselector --listgpumodes

NVIDIA Display Mode Selector Utility (Version 1.72.0)
Copyright (C) 2015-2025, NVIDIA Corporation. All Rights Reserved.

GPU Mode: Graphics

※GPU Mode: Graphicsとなっていることを確認する。

$ sudo ./displaymodeselector --gpumode compute
NVIDIA Display Mode Selector Utility (Version 1.72.0)
Copyright (C) 2015-2025, NVIDIA Corporation. All Rights Reserved.

WARNING: This operation updates the firmware on the board and could make
the device unusable if your host system lacks the necessary support.

Are you sure you want to continue?
Press 'y' to confirm (any other key to abort):  ## yを入力する。

Update GPU Mode of all adapters to "physical_display_disabled"?
Press 'y' to confirm or 'n' to choose adapters or any other key to abort:    ## nを入力する。

Updating GPU Mode of all eligible adapters to "physical_display_disabled"

Write InfoROM object succesfully
Successfully updated GPU mode to "physical_display_disabled" ( Mode 4 ).

A reboot is required for the update to take effect.
$ sudo ./displaymodeselector --listgpumodes

NVIDIA Display Mode Selector Utility (Version 1.72.0)
Copyright (C) 2015-2025, NVIDIA Corporation. All Rights Reserved.

GPU Mode: Physical display disabled

※GPU Mode: Physical display disabledとなったことを確認する。

 

7.再起動する

$ sync
$ sudo shutdown -r now

 

8.MIGを有効にする(一時設定)

※弊社で検証を実施した際、本項の手順では再起動時に設定が消えてしまう事象を確認いたしました。下記のNVIDIA の公式マニュアルによると世代に応じてMIGの有効化の挙動が異なるようです。

MIG User Guide — NVIDIA Multi-Instance GPU User Guide r580 documentation
User guide for Multi-Instance GPU on the NVIDIA® GPUs.
$ sudo nvidia-smi -i [GPU ID] -mig 1
例.) GPU IDが0の場合
 sudo nvidia-smi -i 0 -mig 1

※複数枚のNVIDIA RTX PRO 6000でMIGを有効にする場合それぞれに対して実施する。

$ nvidia-smi

※MIGが有効になっていることを確認する。

 
以上、手順でMIGを有効化出来ますので、あとは任意のMIG設定を実施して頂ければと思います。(検証環境では下記の通り4分割を実施してインスタンスを作成出来ることを確認いたしました。)
 
$ sudo sudo nvidia-smi mig -cgi 14,14,14,14 -C
Successfully created GPU instance ID 3 on GPU 0 using profile MIG 1g.24gb (ID 14)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 3 using profile MIG 1g.24gb (ID 0)
Successfully created GPU instance ID 4 on GPU 0 using profile MIG 1g.24gb (ID 14)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 4 using profile MIG 1g.24gb (ID 0)
Successfully created GPU instance ID 5 on GPU 0 using profile MIG 1g.24gb (ID 14)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 5 using profile MIG 1g.24gb (ID 0)
Successfully created GPU instance ID 6 on GPU 0 using profile MIG 1g.24gb (ID 14)
Successfully created compute instance ID 0 on GPU 0 GPU instance ID 6 using profile MIG 1g.24gb (ID 0)
$ nvidia-smi
Wed Oct 1 16:46:43 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 580.65.06 Driver Version: 580.65.06 CUDA Version: 13.0 |
+-----------------------------------------+------------------------+----------------------+
| 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 NVIDIA RTX PRO 6000 Blac... On | 00000000:01:00.0 Off | Off |
| 30% 31C P8 24W / 300W | 256MiB / 97887MiB | N/A Default |
| | | Enabled |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| MIG devices: |
+------------------+----------------------------------+-----------+-----------------------+
| GPU GI CI MIG | Shared Memory-Usage | Vol| Shared |
| ID ID Dev | Shared BAR1-Usage | SM Unc| CE ENC DEC OFA JPG |
| | | ECC| |
|==================+==================================+===========+=======================|
| 0 3 0 0 | 64MiB / 24192MiB | 46 N/A | 1 1 1 0 1 |
| | 0MiB / 8327MiB | | |
+------------------+----------------------------------+-----------+-----------------------+
| 0 4 0 1 | 64MiB / 24192MiB | 46 N/A | 1 1 1 0 1 |
| | 0MiB / 8327MiB | | |
+------------------+----------------------------------+-----------+-----------------------+
| 0 5 0 2 | 64MiB / 24192MiB | 46 N/A | 1 1 1 0 1 |
| | 0MiB / 8327MiB | | |
+------------------+----------------------------------+-----------+-----------------------+
| 0 6 0 3 | 64MiB / 24192MiB | 46 N/A | 1 1 1 0 1 |
| | 0MiB / 8327MiB | | |
+------------------+----------------------------------+-----------+-----------------------+

+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+