clvk is currently designed with Unified Memory Architecture systems in mind. All the device memory allocations are currently HOST_VISIBLE which is inefficient on systems with a discrete GPU. Instead clvk should use DEVICE_LOCAL allocations to back memory objects used on the GPU and transfer to/from HOST_VISIBLE allocations as needed.
clvk is currently designed with Unified Memory Architecture systems in mind. All the device memory allocations are currently
HOST_VISIBLE
which is inefficient on systems with a discrete GPU. Instead clvk should useDEVICE_LOCAL
allocations to back memory objects used on the GPU and transfer to/fromHOST_VISIBLE
allocations as needed.