在分配缓冲区之前,我想知道我的设备上有多少可用内存。这可能吗?我知道CL_DEVICE_GLOBAL_MEM_SIZE
总内存和CL_DEVICE_MAX_MEM_ALLOC_SIZE
单个对象的最大大小,但我想知道当前的内存状态。
就目前而言,我可能不得不使用 OpenGL 供应商特定的扩展。
在分配缓冲区之前,我想知道我的设备上有多少可用内存。这可能吗?我知道CL_DEVICE_GLOBAL_MEM_SIZE
总内存和CL_DEVICE_MAX_MEM_ALLOC_SIZE
单个对象的最大大小,但我想知道当前的内存状态。
就目前而言,我可能不得不使用 OpenGL 供应商特定的扩展。
不,没有办法,也不需要知道,GPU 内存可以虚拟化,驱动程序会在需要/不需要时从 GPU 换入/换出内存。
您可以在 nVidia 上使用GL_NVX_gpu_memory_info。