Dans la machine que je lance, j'ai deux GTX 980 Tis. Lorsque je demande le nombre de périphériques physiques, vkEnumeratePhysicalDevices
il renvoie toujours 1 malgré 2 cartes graphiques physiques discrètes. Lorsque j'utilise vulkaninfo
le seul appareil répertorié GPU0
est un DISCRETE_GPU
/ GTX 980 Ti
.
Cela se produit dans Windows 10 ainsi que GNU / Linux 4.5 en utilisant Vulkan API 1.0.11 avec des pilotes Nvidia propriétaires.
Est-ce un comportement normal et je n'utilise pas correctement l'API ou s'agit-il d'un bug? J'ai l'impression d'avoir fait une erreur évidente mais je ne trouve rien dans la spécification Vulkan à ce sujet.
Pour plus de clarté, voici exactement comment je demande le nombre de périphériques physiques:
auto deviceCount = uint32_t{0};
instance.enumeratePhysicalDevices(&deviceCount, nullptr);
// At this point deviceCount is 1
De plus, pour confirmer que le système d'exploitation voit les cartes:
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 |
+-------------------------------+----------------------+----------------------+
Réponses:
De la FAQ LunarG :
J'écrirais ce problème comme étant quelque chose qui n'a pas été implémenté car il n'était pas nécessaire qu'ils l'implémentent encore. Lorsque Vulkan ajoute une meilleure prise en charge multi-GPU à exiger dans ses spécifications, ces problèmes seront très probablement résolus. Il est étrange qu'il n'expose toujours pas les GPU disponibles, mais même si c'était le cas, Vulkan 1.0.x n'est pas prêt à utiliser plusieurs GPU d'une manière qui profiterait aux jeux.
Mise à jour du 23/07/2016: Avec le pilote Nvidia GeForce v368.69, plusieurs GPU sont visibles pour Vulkan.
Sans rien changer (toujours en utilisant l'API Vulkan v1.0.11) et mettre à jour le dernier pilote de Nvidia, j'ai un accès complet aux deux périphériques physiques sur ma machine, cela ne signifie pas que la prise en charge multi-GPU est bien là, mais c'est la première étape dans Vulkan étant même un choix viable lors du développement d'un jeu.
la source
Vous devriez avoir désactivé / supprimé le pont SLI.
C'est l' erreur évidente flagrante que je vois ici AFAIK.
la source