检查GPU是否集成

hus*_*sik 1 opencl

我找不到有关设备集成/嵌入到cpu或使用系统ram或自己专用的gddr内存的查询命令?我可以对映射/取消映射与读/写进行基准测试,以得出结论,但该设备当时可能处于负载状态,并且表现不佳,这会给我正在使用的已经很复杂的负载平衡算法增加复杂性。

有没有简单的方法来检查gpu是否与cpu使用相同的内存,所以我可以选择直接映射/取消映射而不是读/写?

编辑:有CL_DEVICE_LOCAL_MEM_TYPE

CL_GLOBAL or CL_LOCAL
Run Code Online (Sandbox Code Playgroud)

这是否表明了整体性?

jpr*_*ice 5

OpenCL 1.x具有设备查询CL_DEVICE_HOST_UNIFIED_MEMORY

如果设备和主机具有统一的内存子系统,则为CL_TRUE,否则为CL_FALSE。

从OpenCL 2.0开始不推荐使用此查询,但目前应该仍可以在OpenCL 2.x平台上使用。否则,您可能可以根据的结果产生启发CL_DEVICE_SVM_CAPABILITIES