OpenCL was developed as a means for programmers to get access to the significant compute capability available in modern GPUs. The goal was to have one API that programmers could target and have the resulting programs be portable across different underlying hardware implementations. Fortunately, OpenCL is flexible enough to target compute engines other than GPUs. It can also be used to control compute dispatch to DSPs and CPUs. Additionally, with a new OpenCL 1.2 feature called Custom Device, it can also be used to control dispatch to more application specific compute engines and thus it truly can become a one stop shop for controlling all the compute engines on a modern embedded SOC. This session will introduce OpenCL, the custom device feature and will discuss potential use cases.
Alan Ward, Distinguished Member Technical Staff, Texas Instruments
Alan Ward is a Distinguished Member of the Technical Staff with Texas Instruments. He is currently leading an effort to bring the OpenCL parallel programming paradigm to the embedded world, where it can be used to target all computing components on today's very heterogeneous SOCs. He is a member of the OpenCL standards committee.