This white paper gives a high-level overview of vehicle development, followed by a deep dive in the different software development processes, languages and tools that are required for efficient development of the next generation of intelligent vehicles. This paper especially explores SYCL. Three main challenges are covered: The software development processes, the shift towards CD / CI, and the programming of future - heterogeneous systems using open standards (e.g. SYCL). To this end an overview of the automotive landscape is given, where functional safety standards are now the norm and where open standards for software are becoming the solution for the automotive industry, achieving the demands of ADAS developers and overcoming software development challenges.
Codeplay’s Charles Macfarlane, CBO, and Illya Rudkin, Safety-Critical Software Development Lead, have contributed to this white paper as part of the Autosens conference proceedings. The paper emphasizes the need for the automotive industry to embrace open standards including SYCL in order to be able to meet the needs of the next generation of vehicles. Learn more and download the paper.
Celerity is an open source project which focuses on providing a way of scaling applications to a cluster of accelerators without having to be an expert in distributed memory programming. In fact, the Celerity API does not make it apparent that a program is running on many nodes at all: There is no notion of MPI ranks or process IDs, and partitioning of work and data is taken care of transparently behind the scenes. Celerity is built on top of SYCL: The API makes it the perfect starting point that hits a sweet spot between cost and power as well as ease of use. From that base, we set out to find the minimal set of extensions required to bring the SYCL API to distributed memory clusters - thus making it relatively easy to migrate an existing SYCL application to Celerity.
In the latest episode of CppCast Codeplay VP of Research & Development Michael Wong talks about the provisional specification of SYCL 2020. The specification has now been released and Michael joined Rob and Jason to give an introduction to what SYCL is, and why the latest revision brings some great new features, as well as less verbose, simpler code.
They cover a range of other topics, from the challenges of moving MISRA, a standard used for safety critical applications such as vehicles, to use more modern C++ features like templates and dynamic memory, through to his involvement in aligning the ISO C++ standard with SYCL to support parallel programming.
Nicole Huesman is joined by Ronan Keryell, principal software engineer at Xilinx, and Jeff Hammond, principal engineer at Intel, to hear their explanation on why open collaboration — modeled through open source and open standards — is key to solving some of today’s biggest challenges in research and industry, revealing some of the misconceptions, or least understood aspects, along the way. Then they explore the value of open languages and programming models, diving into ISO C++, Khronos Group SYCL, the amazing SYCL community, and what excites them most about the SYCL 2020 Provisional Specification.
The Khronos Group announces the ratification and public release of the SYCL 2020 Provisional Specification. SYCL is a standard C++ based heterogeneous parallel programming framework for accelerating High Performance Computing (HPC), machine learning, embedded computing, and compute-intensive desktop applications on a wide range of processor architectures, including CPUs, GPUs, FPGAs, and AI processors.The SYCL 2020 Provisional Specification is publicly available today to enable feedback from developers and implementers before the eventual specification finalization and release of the SYCL 2020 Adopters Program, which will enable implementers to be officially conformant—tentatively expected by the end of the year.
SYCL has been selected as the programming model for Argonne National Lab’s Aurora supercomputer, the first exascale supercomputer in the world. SYCL’s selection is the group’s belief that it is an open standard that can be relied on long into the future. Learn more about SYCL and why SYCL and ISO C++ were chosen.
Intel has released oneAPI DPC++ Compiler 2020-05 as their latest snapshot for the current state of their LLVM-based Data Parallel C++ Compiler. With this release comes various SYCL front-end and driver improvements and the OpenCL ahead-of-time compilation tool is now included in their sycl-toolchain target, and much more.
C++ Ray-Tracing in a Weekend by Peter Shirley is a great resource to start learning about ray-tracers and how to implement one, and at the same time providing all the source code in a GitHub repository. The main goal of this blog post is not to teach the concepts of ray-tracing, Peter does a great job of that, but provide a walk-through tutorial on how to accelerate practical applications and algorithms using SYCL. Read on to learn more.
This year IWOCL & SYCLcon 2020 had a record number of high quality submissions in all categories; research papers, technical presentations, tutorials and posters. These video presentations from the IWOCL & SYCLcon 2020 program of papers, tech. presentations and posters are now online.
To coincide with IWOCL and SYCLcon 2020 Codeplay is releasing ComputeCpp v2.0.0 which brings with it some changes to Codeplay’s practices and support as well as adding some new features. “Unified Shared Memory (USM)” aims to reduce the barrier to integrate SYCL code into existing C++ codebases by introducing new modes that reduce the amount of code that must be changed to interface the two codes. An “experimental” version of USM in ComputeCpp available in v2.0.0.
Today, The Khronos® Group, an open consortium of industry-leading companies creating advanced interoperability standards, publicly releases the OpenCL™ 3.0 Provisional Specifications. OpenCL 3.0 realigns the OpenCL roadmap to enable developer-requested functionality to be broadly deployed by hardware vendors, and it significantly increases deployment flexibility by empowering conformant OpenCL implementations to focus on functionality relevant to their target markets. OpenCL 3.0 also integrates subgroup functionality into the core specification, ships with a new OpenCL C 3.0 language specification, uses a new unified specification format, and introduces extensions for asynchronous data copies to enable a new class of embedded processors. The provisional OpenCL 3.0 specifications enable the developer community to provide feedback on GitHub before the specifications and conformance tests are finalized.
The 8th International Workshop on OpenCL, SYCL, Vulkan and SPIR-V starts today, April 27th 2020, and will be a digital only event. The complete conference program is online showing first up SYCL Tutorials with ‘An Introduction to SYCL’ presented by Codeplay, Heidelberg University, Intel and Xilinx. Registration is free. Listen now to Michael Wong, SYCL Working Group Chair give a SYCL State of the Union, with slides and video.