GPU passthrough di Proxmox VE adalah solusi ideal untuk meraih performa grafis setara native di Virtual Machine (VM) Windows. Fitur ini sangat penting untuk kebutuhan gaming, editing video, hingga machine learning. Namun, tantangan yang kerap dialami oleh Sysadmin dan praktisi virtualisasi adalah munculnya Error Code 43 di Device Manager Windows.
Error Code 43 biasanya muncul karena driver GPU, terutama NVIDIA atau AMD, mendeteksi bahwa mereka berjalan di lingkungan virtual, sehingga driver dengan sengaja menonaktifkan fungsi kartu grafis.
Artikel ini akan membahas langkah demi langkah cara mengatasi Error Code 43 pada VM Windows di Proxmox VE. Contoh ini saya menggunakan Mini PC dengan prosesor J4125 atau iGPU onboard Intel UHD 600.
Persiapan dan Prasyarat
- IOMMU Sudah Aktif: Pastikan
Intel VT-datauAMD-Visudah diaktifkan di BIOS/UEFI motherboard dan dikonfigurasi di bootloader Proxmox (GRUBatausystemd-boot). - Driver GPU Host Di-blacklist: GPU yang ingin di-passthrough tidak boleh digunakan oleh host Proxmox itu sendiri. Pastikan driver seperti
nouveau,nvidia,radeon, atauamdgpusudah dimasukkan ke dalam daftar blacklist di/etc/modprobe.d/. - Menambahkan Kernel Modules: Memberi tahu Proxmox untuk load driver yang diperlukan untuk passthrough dan mapping Vendor-Device ID hardware Anda ke dalam file
/etc/modprobe.d/vfio.conf. - Atau Anda bisa lihat artikel saya sebelumnya di Intel iGPU/VGA dan Audio Onboard Passthrough di Proxmox VE.
Langkah-langkah Konfigurasi Mengatasi Error Code 43
Solusi utama dari masalah ini adalah menyembunyikan identitas hypervisor KVM dari VM Windows, atau biasa disebut dengan teknik hypervisor hiding.
Step 1: Ubah Konfigurasi Hardware VM via Web UI
- Masuk ke Web UI Proxmox VE Anda.
- Pilih VM Windows yang bermasalah, lalu masuk ke menu Hardware.
- Pada opsi Display, pastikan Anda mengubahnya menjadi none atau pastikan GPU utama dialokasikan menggunakan opsi PCI Device dengan mencentang Primary GPU dan PCI-Express.
- Di bagian Machine, sangat direkomendasikan menggunakan tipe
q35dan pastikan BIOS menggunakanOVMF (UEFI), bukan SeaBIOS.
Step 2: Pasang VBIOS Intel J4125 Gemini Lake
Windows memerlukan salinan fisik VBIOS (Video BIOS) agar driver Intel dapat memuat kontrol grafisnya. Sesuaikan dengan hardware Anda, kasus saya memerlukan VBIOS untuk Intel J4125
Download VBIOS di https://github.com/AICodo/intel6-14rom/releases sesuaikan dengan hardware Anda. Dan pastikan file rom tersebut di copy ke dalam folder /usr/share/kvm/ host proxmox Anda.
curl -L https://github.com/AICodo/intel6-14rom/releases/download/v2.0-20260306-092336/j4125-q10.rom -o /usr/share/kvm/j4125-q10.rom
Step 3: Edit File Konfigurasi VM via CLI Proxmox
Buka file konfigurasi VM Windows (misalnya 101) Anda menggunakan editor teks nano:
nano /etc/pve/qemu-server/101.conf
Tambahkan argumen khusus untuk memanipulasi CPU flags sehingga Windows mengira sedang berjalan di PC fisik.
args: -set device.hostpci0.bus=pcie.0 -set device.hostpci0.addr=0x02.0 -set device.hostpci0.x-igd-gms=0x6 -set device.hostpci0.x-igd-opregion=on
cpu: host,hidden=1
hostpci0: 0000:00:02.0,j4125-q10.rom,pcie=1,x-vga=1
Kesimpulan
Mengatasi Error Code 43 di Proxmox VE ibarat bermain “kucing-kucingan” antara driver GPU dan hypervisor. Dengan menyembunyikan status virtualisasi lewat parameter hidden=1 serta memodifikasi hv_vendor_id, Windows tidak akan mendeteksi lingkungan virtual dan membiarkan driver GPU berjalan dengan performa maksimal.