Na máquina em que estou executando, tenho duas GTX 980 Tis. Quando eu pergunto, a contagem de dispositivos físicos vkEnumeratePhysicalDevices
sempre retorna 1, apesar de ter duas placas gráficas físicas discretas. Quando uso vulkaninfo
o único dispositivo listado é o GPU0
que é DISCRETE_GPU
/ GTX 980 Ti
.
Isso acontece no Windows 10 e no GNU / Linux 4.5 usando a API Vulkan 1.0.11 com drivers proprietários da Nvidia.
Esse comportamento é normal e não estou usando a API corretamente ou isso é um bug? Sinto que cometi um erro óbvio evidente, mas não consigo encontrar nada na especificação Vulkan sobre isso.
Para maior clareza, é exatamente assim que consulta a contagem de dispositivos físicos:
auto deviceCount = uint32_t{0};
instance.enumeratePhysicalDevices(&deviceCount, nullptr);
// At this point deviceCount is 1
Além disso, para confirmar que o sistema operacional vê os cartões:
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 |
+-------------------------------+----------------------+----------------------+
Respostas:
Do FAQ do LunarG :
Eu consideraria esse problema como algo que não foi implementado porque não era necessário que eles o implementassem ainda. Quando o Vulkan adicionar um melhor suporte multi-GPU a ser exigido em suas especificações, esses problemas provavelmente serão corrigidos. É estranho que ele ainda não exponha as GPUs disponíveis, mas mesmo assim, o Vulkan 1.0.x não está pronto para utilizar várias GPUs de maneira a beneficiar os jogos.
Atualização em 23/07/2016: Com o driver Nvidia GeForce v368.69, várias GPUs ficam visíveis para o Vulkan.
Sem alterar nada (ainda usando a Vulkan API v1.0.11) e atualizar o driver mais recente da Nvidia, tenho acesso total aos dois dispositivos físicos na minha máquina, isso não significa que o suporte a várias GPUs esteja aqui, mas é o primeiro passo em Vulkan, mesmo sendo uma opção viável ao desenvolver um jogo.
fonte
Você deveria ter desativado / removido a ponte SLI.
Esse é o óbvio erro óbvio que estou vendo aqui, AFAIK.
fonte