В машине я бегу у меня два GTX 980 Tis. Когда я запрашиваю счетчик физических устройств, vkEnumeratePhysicalDevices
он всегда возвращает 1, несмотря на наличие двух физических дискретных видеокарт. Когда я использую vulkaninfo
единственное устройство в списке, GPU0
которое является DISCRETE_GPU
/ GTX 980 Ti
.
Это происходит в Windows 10, а также в GNU / Linux 4.5 с использованием Vulkan API 1.0.11 с проприетарными драйверами Nvidia.
Это нормальное поведение, и я не правильно использую API или это ошибка? Я чувствую, что совершил явную очевидную ошибку, но не могу найти в спецификации Vulkan ничего об этом.
Для ясности, именно так я запрашиваю счетчик физических устройств:
auto deviceCount = uint32_t{0};
instance.enumeratePhysicalDevices(&deviceCount, nullptr);
// At this point deviceCount is 1
Также для подтверждения того, что ОС видит карты:
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 |
+-------------------------------+----------------------+----------------------+
Ответы:
Из LunarG FAQ :
Я бы списал этот вопрос как нечто, что не было реализовано, потому что не требовалось, чтобы они его реализовали. Когда Vulkan добавляет в свои спецификации лучшую поддержку нескольких графических процессоров, эти проблемы, скорее всего, будут исправлены. Странно, что он по-прежнему не отображает доступные графические процессоры, но даже если бы он это сделал, Vulkan 1.0.x не готов использовать несколько графических процессоров таким образом, чтобы это приносило пользу играм.
Обновление от 23.07.2016: С драйвером Nvidia GeForce v368.69 Vulkan видны несколько графических процессоров.
Ничего не меняя (все еще используя Vulkan API v1.0.11) и обновляя до последней версии драйвера Nvidia, у меня есть полный доступ к обоим физическим устройствам на моей машине, это не значит, что поддержка Multi-GPU здесь, но это первый шаг в Vulkan, даже будучи жизнеспособным выбором при разработке игры.
источник
Вы должны были отключить / удалить мост SLI.
Это явная очевидная ошибка, которую я вижу здесь, AFAIK.
источник