We have released a new version of ComputeCpp with improvements to performance and device compilation as well as a number of bug fixes. This release includes some updates to the interface for the context class, which will cause compilation errors if not fixed, and various changes to the tooling.
Summarized release notes are available as well as the full release notes on our website.
New Features in v0.1.2
ComputeCpp has enabled support for basic extensions similar to OpenCL extensions. Future releases will include extensions that will be proposed to the SYCL standard. For more information look at the Github project where you can find the standard proposals.
Improvements in v0.1.2
- Improved device compiler speed
- Improved performance
- The device compiler will now warn if an undefined function is used inside a SYCL kernel
- Improved handling of SIGINT
- Device support status now reported as tested/untested/unsupported in computecpp_info
Fixes in v0.1.2
- Fixed issues related to SPIR module conformance
- Various compiler fixes
- Fixed 2D atomics
- Improvements on memory allocation policies for memory objects (buffer, images)
- Improvements on the performance of long-running applications
Breaking Changes in v0.1.2
- Added the info::gl_context_interop flag to the context constructors, according to the SYCL 1.2 specification
- Removed the --all flag from computecpp_info
- --sycl-no-diags is now deprecated and will be removed in the next release
The new release of ComputeCpp makes some key fixes and enhancements for the progression of our integration with the TensorFlow project. We'll be posting an update on our work with TensorFlow soon.