On recent drivers, if the Vulkan ICD manages to connect to the X server but doesn’t find our driver running on the server side, it falls back to a mode where it renders on the local GPU and then the swapchain uploads pixels using a fallback, likely XPutImage
in this case. In this mode, the graphics and compute queues are fully accelerated just as they would be on a normal configuration, but the swapchain reads the pixels back from the GPU to system memory and then uses the PutImage fallback path to present.
I’m not sure which GPUs get enumerated by the Vulkan ICD in that case. I don’t have a multi-GPU system to test it with at the moment.