Seema Mirchandaney, Engineering Manager for Software Tools at Synopsys, presents the "Using the OpenCL C Kernel Language for Embedded Vision Processors" tutorial at the May 2016 Embedded Vision Summit.
OpenCL C is a programming language that is used to write computation kernels. It is based on C99 and extended to support features such as multiple levels of memory hierarchy, parallelism and synchronization. This talk focuses on the benefits and ease of programming vision-based kernels by using the key features of OpenCL C. In addition, Mirchandaney describes language extensions that allow programmers to take advantage of hardware features typical of embedded vision processors, such as wider vector widths, sophisticated accumulator forms of instructions, and scatter/gather capabilities. This talk also addresses advanced topics, such as whole function vectorization support available in the compiler and the benefits of hardware support for predication in the context of lane-based control flow and OpenCL C.