Временное программное ограничение 400 Вт (против 600 Вт по умолчанию на данной карте) использовалось во время электрической диагностики. Тесты ComfyUI и Ollama 27–28 сентября 2026 затем проводились при 600 Вт по явному решению. Устойчивый выигрыш в стабильности или сравнение производительности между этими ограничениями не установлены.
nvidia-smi \ --query-gpu=power.limit,power.default_limit \ --format=csv,noheader
Диагностическое значение 400 Вт применяется командой sudo nvidia-smi --power-limit=400 — настройка не сохраняется после перезагрузки или перезагрузки драйвера. Подробные команды, телеметрия и возврат к заводскому ограничению описаны на странице ИИ и LLM (VM210).
| Технология | Роль |
|---|---|
| VFIO | Linux-фреймворк изоляции PCIe |
| IOMMU / AMD-Vi | Блок управления памятью для ввода-вывода |
| PCI Passthrough | Прямое назначение GPU → ВМ |
| Q35 | Чипсет QEMU, необходимый для современного PCIe |
| OVMF | UEFI, обязательный для passthrough NVIDIA |
| Файл | Изменение |
|---|---|
| /etc/default/grub | amd_iommu=on iommu=pt |
| /etc/modprobe.d/vfio.conf | привязка VFIO к ID GPU |
| /etc/modules | vfio vfio_iommu_type1 vfio_pci |
| /etc/initramfs-tools/ | Интеграция модулей при загрузке |
| /etc/pve/qemu-server/*.conf | Конфигурация ВМ Proxmox |
Настройка потребовала различать несколько уровней диагностики, чтобы приписывать каждый эффект единственному параметру:
- прошивка и IOMMU
- драйвер хоста и группы PCIe
- резервирование GPU и его аудиофункции за
vfio-pci - конфигурация ВМ
- гостевой драйвер и CUDA
- контейнерная среда (доступ к GPU вплоть до Docker)
Перед любым обновлением прошивки сохраняются параметры, нужные для IOMMU и VFIO, и готовится откат; после изменения заново проверяются группы IOMMU, резервирование GPU и запуск ВМ. Для восстановления сохраняется отдельная виртуальная консоль.
Выполняемая на хосте Proxmox, эта команда обнаруживает RTX 5090 (не показывая её адрес), находит ВМ, настроенные на её использование, и выводит очищенную метку — отличая текущее состояние ВМ от её политики автозапуска и проверяя, что только одна ВМ passthrough активна одновременно.
gpu_bdf=$(lspci -D | awk '/NVIDIA.*RTX 5090/ {print $1; exit}')
[ -n "$gpu_bdf" ] || { echo 'RTX 5090 non détectée'; exit 1; }
gpu_slot=${gpu_bdf%.*}
gpu_slot_short=${gpu_slot#0000:}
alternative=0
running_gpu_vms=0
for vmid in $(qm list | awk 'NR > 1 {print $1}'); do
config=$(qm config "$vmid")
if grep -Eq "^hostpci[0-9]+:.*(${gpu_slot}|${gpu_slot_short})([.,]|$)" \
<<< "$config"; then
if [ "$vmid" = 210 ]; then
label="IA-Core"
else
alternative=$((alternative + 1))
label="GPU-alternative-${alternative}"
fi
status=$(qm status "$vmid" | awk '{print $2}')
onboot=$(awk -F': ' '/^onboot:/ {print $2}' <<< "$config")
startup=$(awk -F': ' '/^startup:/ {print $2}' <<< "$config")
[ -z "$onboot" ] && onboot=0
[ -z "$startup" ] && startup="-"
[ "$status" = running ] && running_gpu_vms=$((running_gpu_vms + 1))
printf '%-20s status=%-8s onboot=%-2s startup=%s\n' \
"$label" "$status" "$onboot" "$startup"
fi
done
if [ "$running_gpu_vms" -le 1 ]; then
printf 'GPU passthrough actif : %s VM — exclusivité OK\n' "$running_gpu_vms"
else
printf 'ALERTE : %s VM GPU actives simultanément\n' "$running_gpu_vms"
exit 2
fiIA-Core status=running onboot=1 startup=order=20,up=30,down=60 GPU-alternative-1 status=stopped onboot=0 startup=- GPU-alternative-2 status=stopped onboot=0 startup=- … status=stopped onboot=0 startup=- GPU passthrough actif : 1 VM — exclusivité OK
Эталонный снимок BIOS отделяет реально наблюдаемые значения от лишь рассматриваемых улучшений. Перед любым обновлением прошивки параметры, необходимые для IOMMU и VFIO, сохраняются, и готовится план отката; после изменения группы IOMMU, резервирование GPU и запуск ВМ проверяются заново. Тесты остаются поэлементными, чтобы чётко связать каждый эффект с изменённым параметром.
Проверка: драйвер NVIDIA и CUDA были проверены в ВМ Ubuntu, после чего доступ к GPU был подтверждён вплоть до контейнеров Docker (через NVIDIA Container Toolkit).