私は通常、仮想マシンに接続するGeforce GTX 960とQuadro M4000グラフィックカードでシステムを構築しました。 GTX 960カードはコンソール専用です。
通常、ホストはカーネルドライバが Quadro カードvfio-pci
の使用を禁止するため、Quadro カードを使用できません。ただし、仮想マシンでそれを使用しない場合は、たとえば計算を実行するためにホストマシンからアクセスできるようにしたいと思います。
nvidia-setttings
ところで、消費電力とファン速度には非常に奇妙な動作があります。電源を入れずに電力消費とファン速度をどのように減らすことができますか?
私のメモから:
ホストでパススルー準備デバイスを再利用する
ゲストに転送する準備ができたホストでセカンダリグラフィックカードを使用する必要があるとします。誤ったドライバがロードされ、デバイスがコンソールで機能しないことがよくあります。ここでは、Quadro M4000はすでにvfio-pci
ドライバを使用していますが、nvidia
このドライバを使用する必要があります。
sudo lspci -nnk | egrep -A3 "VGA|Display|3D"
# 0b:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 960] [10de:1401] (rev a1)
# Subsystem: Gigabyte Technology Co., Ltd Device [1458:36ac]
# Kernel driver in use: nvidia
# Kernel modules: nouveau, nvidia_drm, nvidia
# --
# 0c:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204GL [Quadro M4000] [10de:13f1] (rev a1)
# Subsystem: Hewlett-Packard Company Device [103c:1153]
# Kernel driver in use: vfio-pci
# Kernel modules: nouveau, nvidia_drm, nvidia
ドライバを削除しvfio-pci
、デバイスの状態を再確認してください。カーネルドライバを使用しないでください。行は消えKernel driver in use: ...
ます。
sudo modprobe -r vfio-pci
sudo lspci -nnk | egrep -A3 "VGA|Display|3D"
# 0b:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 960] [10de:1401] (rev a1)
# Subsystem: Gigabyte Technology Co., Ltd Device [1458:36ac]
# Kernel driver in use: nvidia
# Kernel modules: nouveau, nvidia_drm, nvidia
# --
# 0c:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204GL [Quadro M4000] [10de:13f1] (rev a1)
# Subsystem: Hewlett-Packard Company Device [103c:1153]
# Kernel modules: nouveau, nvidia_drm, nvidia
# 0c:00.1 Audio device [0403]: NVIDIA Corporation GM204 High Definition Audio Controller [10de:0fbb] (rev a1)
また、nvidiaドライバツールの出力を確認してくださいnvidia-smi
。 1つのグラフィックカード(失敗したGTX 960)のみをリストする必要があります。
sudo nvidia-smi
# Tue Sep 28 18:19:36 2021
# +-----------------------------------------------------------------------------+
# | NVIDIA-SMI 470.74 Driver Version: 470.74 CUDA Version: 11.4 |
# |-------------------------------+----------------------+----------------------+
# | 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 GeForce ... Off | 00000000:0B:00.0 On | N/A |
# | 0% 51C P8 19W / 160W | 477MiB / 4040MiB | 0% Default |
# | | | N/A |
# +-------------------------------+----------------------+----------------------+
# ...
システムから接続されているすべてのPCIデバイスを取り外します。この場合はと0c:00.0
です0c:00.1
。その後、実際に消えたことを確認してください。
echo 1 | sudo tee /sys/bus/pci/devices/0000\:0c\:00.0/remove
echo 1 | sudo tee /sys/bus/pci/devices/0000\:0c\:00.1/remove
sudo ls /sys/bus/pci/devices/ | grep 0c:00.
# nothing...
その後、PCIデバイスで動作させ、rescan
デバイスが存在し、再度有効になっていることを確認します。また、どのカーネルドライバが使用されているか、どのようなnvidia-smi
内容が指定されているかを確認してください。
echo 1 | sudo tee /sys/bus/pci/rescan
sudo ls /sys/bus/pci/devices/ | grep 0c:00.
sudo cat /sys/bus/pci/devices/0000\:0c\:00.?/enable
# 1
# 1
sudo lspci -nnk | egrep -A3 "VGA|Display|3D"
# 0b:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 960] [10de:1401] (rev a1)
# Subsystem: Gigabyte Technology Co., Ltd Device [1458:36ac]
# Kernel driver in use: nvidia
# Kernel modules: nouveau, nvidia_drm, nvidia
# --
# 0c:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204GL [Quadro M4000] [10de:13f1] (rev a1)
# Subsystem: Hewlett-Packard Company Device [103c:1153]
# Kernel driver in use: nvidia # <-- here!
# Kernel modules: nouveau, nvidia_drm, nvidia
sudo nvidia-smi
# Tue Sep 28 18:26:16 2021
# +-----------------------------------------------------------------------------+
# | NVIDIA-SMI 470.74 Driver Version: 470.74 CUDA Version: 11.4 |
# |-------------------------------+----------------------+----------------------+
# | 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 GeForce ... Off | 00000000:0B:00.0 On | N/A |
# | 0% 47C P8 19W / 160W | 479MiB / 4040MiB | 0% Default |
# | | | N/A |
# +-------------------------------+----------------------+----------------------+
# | 1 Quadro M4000 Off | 00000000:0C:00.0 Off | N/A |
# | 45% 37C P0 42W / 120W | 0MiB / 8127MiB | 2% Default |
# | | | N/A |
# +-------------------------------+----------------------+----------------------+
# ...
興味深いことに、Quadro M4000は完全に無負荷で約42ワットを消費します。ドライバの問題が原因だと思います。
しかし、nvidia-settings
、グラフィックプログラムがロードされている場合の電源要件落ちるおそらく12ワット。
# Terminal A
watch -d -n 1 sudo nvidia-smi
# Terminal B
nvidia-settings
nvidia-smi
魔法が起こっている間にファンの騒音を見て聞いてください...
watch -d -n 1 sudo nvidia-smi
# ...
# +-------------------------------+----------------------+----------------------+
# | 1 Quadro M4000 Off | 00000000:0C:00.0 Off | N/A |
# | 46% 38C P0 10W / 120W | 0MiB / 8127MiB | 0% Default |
# | | | N/A |
# +-------------------------------+----------------------+----------------------+
# ...