Khronos Works On SYCL For Pushing OpenCL In C++
Rounding out today's Khronos Group announcements of WebCL 1.0 and EGL 1.5 from the Game Developer's Conference is word of a new provisional specification for SYCL.
Khronos announced this morning from San Francisco the SYCL 1.2 provisional specification. SYCL is basically aimed at bringing OpenCL compute capabilities to C++, with OpenCL itself targeting C. SYCL also builds upon the Khronos SPIR intermediate representation that is based upon the LLVM IR.
Khronos explained in their announcement, "SYCL is a royalty-free, cross-platform abstraction layer that enables the development of applications and frameworks that build on the underlying concepts, portability and efficiency of OpenCL, while adding the ease-of-use and flexibility of C++. For example, SYCL can provide single source development where C++ template functions can contain both host and device code to construct complex algorithms that use OpenCL acceleration - and then enable re-use of those templates throughout the source code of an application to operate on different types of data."
The SYCL 1.2 provisional specification supports OpenCL 1.2 and can be paired with C++11 compilers. Future versions of SYCL are expected to catch up to upstream OpenCL (now at OpenCL 2.0) and offer other improvements.
Khronos announced this morning from San Francisco the SYCL 1.2 provisional specification. SYCL is basically aimed at bringing OpenCL compute capabilities to C++, with OpenCL itself targeting C. SYCL also builds upon the Khronos SPIR intermediate representation that is based upon the LLVM IR.
Khronos explained in their announcement, "SYCL is a royalty-free, cross-platform abstraction layer that enables the development of applications and frameworks that build on the underlying concepts, portability and efficiency of OpenCL, while adding the ease-of-use and flexibility of C++. For example, SYCL can provide single source development where C++ template functions can contain both host and device code to construct complex algorithms that use OpenCL acceleration - and then enable re-use of those templates throughout the source code of an application to operate on different types of data."
The SYCL 1.2 provisional specification supports OpenCL 1.2 and can be paired with C++11 compilers. Future versions of SYCL are expected to catch up to upstream OpenCL (now at OpenCL 2.0) and offer other improvements.
3 Comments