Vulkan hat keine spezifischen API-Aufrufe, um solche GPU-Details zu erhalten, dafür müssen Sie mit herstellerspezifischen APIs wie NVAPI arbeiten. Der einzige Hinweis ist möglicherweise deviceType
Mitglied von VkPhysicalDeviceProperties
, die zurückgibt, ob es eine integrierte, diskrete oder virtuelle GPU ist.
Die VRAM-Größe kann jedoch ermittelt werden, indem der Speicher-Heap mit dem DEVICE_LOCAL-Bit unter Verwendung von vkGetPhysicalDeviceMemoryProperties
gefunden wird. Die von dieser Funktion zurückgegebene VkPhysicalDeviceMemoryProperties
enthält alle verfügbaren Speicher-Heaps im memoryHeaps
Mitglied. Die Konfiguration unterscheidet sich besonders. zwischen diskreten und integrierten GPUs, so dass dies nicht immer das ist, was Sie suchen, z. auf integrierten GPUs mit gemeinsamem Speicher.
Heaps für eine diskrete GPU: http://vulkan.gpuinfo.org/displayreport.php?id=1432#memoryheaps
Heaps für eine integrierte GPU:
http://vulkan.gpuinfo.org/displayreport.php?id=1200#memoryheaps