The Linux graphics stack in a nutshell, part 1
The Linux graphics stack in a nutshell, part 1
Posted Feb 2, 2024 8:34 UTC (Fri) by daenzer (subscriber, #7050)In reply to: The Linux graphics stack in a nutshell, part 1 by adobriyan
Parent article: The Linux graphics stack in a nutshell, part 1
The enumeration order isn't well-defined, and in practice partially depends on the order in which the filesystem enumerates the corresponding *_icd.*.json files (which isn't well-defined either). So the order may differ between otherwise mostly identical systems with the same set of VkPhysicalDevices, and may change after modifications to the *_icd.*.json files.
Unfortunately, many (most?) Vulkan applications just use the first enumerated device by default. To prevent such apps from accidentally using an undesirable device such as a lavapipe one, Mesa ships a device selection layer which moves the "default" device to be enumerated first.