An Execution Model for OpenCL 2.0

Benedict R. Gaster
Qualcomm, USA
Computer Sciences Technical Report 2014-02, 2014


   title={An Execution Model for OpenCL 2.0},

   author={Gaster, Benedict R},



Download Download (PDF)   View View   Source Source   



A popular approach to programming manycore GPUs is the Single Instruction Multiple Thread (SIMT) abstraction. SIMT has the benefit of presenting a "single thread" view, alleviating the complexity of explicitly vectorizing the source code. However, due to the SIMD nature of the underlying hardware it is often difficult to fully hide all aspects from the developer. An example of "leaks", is OpenCL’s barrier, which requires all workitems (i.e. threads) to reach and execute the "same" barrier. But what does it mean to reach and execute the same barrier? OpenCL provides very little information about the underlying semantics. In this paper we describe a simple execution model for OpenCL 2.0 that captures precisely the semantics of operations like barrier and the more advanced features of subgroups, recently introduced to expose SIMD in a portable manner.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: