SYCL* Concepts: Buffers and Accessors for Heterogeneous Computing
This workshop examines the advanced concepts and techniques of using buffers and accessors in SYCL* programming for heterogeneous computing. It also shows the mechanism for proper sequencing of kernels, presents the different types of data dependencies, and details the data movements that ensure effective running of graphs in a SYCL application.
Hands-on coding in this workshop demonstrates how to:
- Use SYCL buffers and accessors to apply control over data movement.
- Understand the most common methods for creating a SYCL buffer.
- Determine the appropriate use of the following buffer properties: use_host_ptr, set_final_data and set_write_data.
- Create a SYCL host accessor to synchronize data with the host.
- Select the correct modes of SYCL accessors.
- Split a buffer into two subbuffers and create kernels concurrently.
- Use Unified Shared Memory (USM), buffers, and accessors to apply memory management that controls data movement implicitly and explicitly.
- Use different types of data dependencies that are important to ensure running of graph scheduling in SYCL.
- Select the correct modes of dependencies in SYCL graphs scheduling.
Develop performant code quickly and correctly across hardware targets, including CPUs, GPUs, and FPGAs, with this standards-based, multiarchitecture compiler.
You May Also Like
Related On-Demand Workshops