The Mali™ GPU OpenCL memory model
Mali™ GPUs use a different memory model compared to desktop workstation GPUs.
The main differences between desktop workstation GPUs and Mali GPUs are:
- Desktop workstation GPUs
Traditional desktop workstation processors have their own dedicated memory.
Desktop workstation GPUs have physically separate global, local, and private memories.
Typically, a graphics card has its own memory.
Data must be copied from the application processor memory to the GPU memory and back again.
- Mali GPUs
Mali GPUs have a unified memory system with the application processor.
Mali GPUs use global memory backed with caches in place of local or private memories.
If you allocate local or private memory, it is allocated in global memory. Moving data from global to local or private memory typically does not improve performance.
Copying data is not required, provided it is allocated by OpenCL in the correct manner.
Each compute device, that is, shader core, has its own data caches.