Yes. As per clSVMAlloc , the memory allocation fails if
sizeis greater than
CL_DEVICE_MAX_MEM_ALLOC_SIZEvalue for any device in
So, please check the "Max. memory allocation" parameter from clinfo.
Thanks for your answer, but I still have some questions.
The output information of clinfo for CL_DEVICE_TYP_GPU is: Max memory allocation: 490733568, Global memory size: 1962934272.
Does 490733568 mean the max size of per SVM buffer object? And does 1962934272 mean that the upper limit of memory size that the GPU can use?
The total memory installed in my computer is 16GB. Why the global memory size is less than 2GB?
I have read a technical paper "Heterogeneous Architecture System: A Technical Review" by George Kyriazis (AMD). It says that TCU (e.g. GPU) support page faulting, which means that the GPU can use as large address space as the CPU.
If there are limits on the size of memory space which is available to the GPU on Kaveri APU, does it mean that the Kaveri APU doesn't have the page faulting feature currently?
I still don't quite understand why merely 2GB memory can be allocated. Is this issue caused by current OpenCL driver or APU hardware?