Codeplay’s ComputeCpp™ to Bring SYCL™ into Heterogeneous Processor Solutions

Posted on May 12, 2015 by Alistair Low.

Codeplay Continues to Bring Advanced Compute Solutions into Multi-Processor Products

Codeplay Software today announced ComputeCpp, an easy-to-use standards-based product for lowering the power consumption and increasing the performance of C++ software. The first commercial release of ComputeCpp will support SYCL™ for OpenCL™, the open-standard C++ programming model from The Khronos Group. SYCL allows C++ application developers to write high-performance modern C++ and deploy it to multiple processor cores without hardware-specific rewrites or optimizations.

Today’s systems-on-chip (SoCs) in smartphones and computers have multiple processors of different flavors. A typical mobile processor today has multiple versions of CPUs, multi-core GPUs and an array of other processors including DSPs, VPUs and vision processors/co-processors. OpenCL is already established as the standard for software programmers to accelerate their software on SoCs, but this still requires significant effort from highly specialized programmers.

SYCL is the new Khronos royalty-free open standard announced this week, allowing C++ application developers to utilize the power of modern SoCs without low-level processor expertise, allowing wider use of available processors while limiting impact on system power and performance. Hardware companies also benefit from 3rd party ecosystem participants easily integrating advanced technologies, providing ease of use & greater performance.

By supporting the SYCL open-standard, ComputeCpp lets developers invest in performance optimizations across multiple platforms over the long term, free from dependence on single proprietary solutions. At the same time, Codeplay is contributing to an open-source implementation of the C++17 Parallel STL, built on top of SYCL. The C++17 Parallel STL is a draft ISO standard, defining a standard way of programming parallel processors in C++. By producing an open-source implementation of it on top of SYCL, software written with the C++17 Parallel STL will run on a wide range of OpenCL 1.2-capable devices

“Many markets will benefit from ComputeCpp, reducing effort to develop and maintain new features within power budgets.” said Andrew Richards, CEO of Codeplay and chair of the Khronos SYCL working group. “As vision and data analysis algorithms become more prominent in our lives, we will see uses in automotive, IoT, home security, mobile, tablet and cloud compute solutions.”

Benefits of ComputeCpp:

  • Lowers power consumption and increases performance of C++ software
  • Open-standards-based
  • Works on a wide variety of standard OpenCL 1.2 devices, including CPUs and GPUs from multiple vendors. In future, will support FPGAs and DSPs
  • Easy-to-use for C++ software developers
  • Aligns with the latest and future C++ standards, such as Parallel STL and C++17
  • Long-term support for future OpenCL versions
  • A key building block of a developing a C++ software ecosystem for parallel processors