![]() |
wisdom
|
Structure describing a graphics adapter present in the system:
C version:
C++ version:
description defines adapter description. Contains name of the graphics adapter.vendor_id specifies denotes Vendor ID. Can be used to find the correct adapter.device_id defines denotes Device ID. Together with WisAdapterDesc::vendor_id uniquely identifies the device.dedicated_video_memory describes measures dedicated video memory in bytes. Used for device local memory type.shared_system_memory indicates measures memory that is shared with CPU in bytes. Used for upload and readback.adapter_id describes denotes adapter unique ID (LUID). Can be used to find the correct adapter.adapter_uuid indicates stores UUID of the adapter, used only with Vulkan API on systems with no LUID.flags describes adapter flags. Describe the adapter kind.description provides a human-readable name for the adapter, which may help in identifying it among multiple adapters in the system. The string is null-terminated and with length 256 characters.
vendor_id and device_id are identifiers assigned by the hardware manufacturer. They can be used to look up more detailed information about the adapter from vendor databases.
dedicated_video_memory indicates the amount of memory that is exclusively available to the GPU for high-performance operations. This memory is typically faster and more efficient for graphics processing tasks. shared_system_memory indicates the amount of system memory that can be used by the GPU when dedicated video memory is insufficient. This memory is shared with the CPU and may have higher latency compared to dedicated video memory. Both dedicated_video_memory and shared_system_memory are reported in bytes. Applications may use this information to make decisions about resource allocation and performance optimizations. The values may not be identical across different implementations, because underlying graphics APIs expose varying levels of detail about adapter memory.
adapter_id provides a unique identifier for the adapter within the system. This ID can be used to select or reference the same adapter in other API calls or configurations. It matches the LUID provided by Vulkan and DirectX 12 APIs. On systems where LUID is not available (e.g., some Linux systems with Vulkan), adapter_uuid is used instead to uniquely identify the adapter.
flags describe the type and capabilities of the adapter. They provide information about whether the adapter is integrated, discrete, software-based, or external. This information can help applications make decisions about which adapter to use based on performance and power consumption considerations.