3.9 OpenCL concepts summary

Summary of the concepts used in OpenCL.

  • OpenCL primarily uses data parallel processing.
  • Computations in OpenCL are performed by pieces of code called kernels that execute on compute devices. Compute devices can be application processors or GPUs.
  • The data processed by OpenCL is in an index space of work-items. The work-items are organized in an NDRange.
  • One kernel instance is executed for each work-item in the index space.
  • Kernel instances can execute in parallel.
  • You group work-items together to form work-groups. The work-items in a work-group can communicate with each other using shared data buffers, but access to the buffers must be synchronized with barrier operations.
  • Work-groups typically do not directly share data with each other. They can share data using global memory and atomic operations.
  • You can issue multiple work-groups for execution in parallel.
Non-ConfidentialPDF file icon PDF versionARM 100614_0300_00_en
Copyright © 2012, 2013, 2015, 2016 ARM. All rights reserved.