Di mesin saya menjalankan saya punya dua GTX 980 Tis. Ketika saya meminta hitungan perangkat fisik dengan vkEnumeratePhysicalDevices
itu selalu mengembalikan 1 meskipun memiliki 2 kartu grafis diskrit fisik. Ketika saya menggunakan vulkaninfo
satu-satunya perangkat yang terdaftar GPU0
adalah a DISCRETE_GPU
/ GTX 980 Ti
.
Ini terjadi pada Windows 10 dan juga GNU / Linux 4.5 menggunakan Vulkan API 1.0.11 dengan driver Nvidia.
Apakah ini perilaku normal dan saya tidak menggunakan API dengan benar atau ini bug? Saya merasa telah membuat kesalahan yang mencolok tetapi saya tidak dapat menemukan apa pun dalam spesifikasi Vulkan tentang hal itu.
Untuk lebih jelasnya, beginilah cara saya menghitung jumlah perangkat fisik:
auto deviceCount = uint32_t{0};
instance.enumeratePhysicalDevices(&deviceCount, nullptr);
// At this point deviceCount is 1
Juga, untuk mengonfirmasi bahwa OS melihat kartu:
Windows 10:
C:\Users\matt>wmic path win32_VideoController get name
Name
NVIDIA GeForce GTX 980 Ti
NVIDIA GeForce GTX 980 Ti
Linux 4.5:
+------------------------------------------------------+
| NVIDIA-SMI 364.19 Driver Version: 364.19 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 980 Ti Off | 0000:01:00.0 On | N/A |
| 0% 56C P8 34W / 300W | 444MiB / 6140MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GeForce GTX 980 Ti Off | 0000:02:00.0 Off | N/A |
| 0% 43C P8 25W / 300W | 22MiB / 6143MiB | 0% Default |
+-------------------------------+----------------------+----------------------+