Intel® DevCloud for oneAPI

Overview Get Started Documentation Forum external link

Intel oneAPI Base Training Modules

Learn the Essentials of Data Parallel C++

Introduction to JupyterLab* and Notebooks. sample icon

Module 0

Introduction to JupyterLab* and Notebooks.

Learn to use Jupyter notebooks to modify and run code as part of learning exercises.

Sign in to try it in JupyterLab*

Introduction to DPC++  sample icon

Module 1

Introduction to DPC++

  • Articulate how oneAPI can help to solve the challenges of programming in a heterogeneous world.
  • Use oneAPI solutions to enable your workflows.
  • Understand the DPC++ language and programming model.
  • Become familiar with using Jupyter notebooks for training throughout the course.

Sign in to try it in JupyterLab*

DPC++ Program Structure sample icon

Module 2

DPC++ Program Structure

  • Articulate the SYCL* fundamental classes.
  • Use device selection to offload kernel workloads.
  • Decide when to use basic parallel kernels and ND Range Kernels.
  • Create a host accessor.
  • Build a sample DPC++ application through hands-on lab exercises.

Sign in to try it in JupyterLab*

DPC++ Unified Shared Memory sample icon

Module 3

DPC++ Unified Shared Memory

  • Use new DPC++ features like Unified Shared Memory (USM) to simplify programming.
  • Understand implicit and explicit ways of moving memory using USM.
  • Solve data dependency between kernel tasks in an optimal way.

Sign in to try it in JupyterLab*

DPC++ Sub-Groups sample icon

Module 4

DPC++ Sub-Groups

  • Understand advantages of using Sub-groups in DPC++.
  • Take advantage of Sub-group collectives in ND-Range kernel implementation.
  • Use Sub-group Shuffle operations to avoid explicit memory operations.

Sign in to try it in JupyterLab*

Demonstration of Intel® Advisor sample icon

Module 5

Demonstration of Intel® Advisor

  • See how Offload Advisor¹ identifies and ranks parallelization opportunities for offload.
  • Run Offload Advisor using command line syntax.
  • Use performance models and analyze generated reports.

Offload Advisor is a feature of Intel Advisor installed as part of the Intel(R) oneAPI Base Toolkit.

Sign in to try it in JupyterLab*

Intel® VTune™ Profiler on Intel® DevCloud sample icon

Module 6

Intel® VTune™ Profiler on Intel® DevCloud

  • Profile a DPC++ application using Intel® VTune™ Profiler on Intel® DevCloud.
  • Understand the basics of command line options in VTune Profiler to collect data and generate reports.

Sign in to try it in JupyterLab*

DPC++ Library Utilization sample icon

Module 7

DPC++ Library Utilization

Maximize productivity with this companion to Intel® oneAPI DPC++ Compiler providing an alternative for C++ developers.

Sign in to try it in JupyterLab*

OpenMP* Offload Basics

Introduction to JupyterLab and Notebooks. sample icon

Module 0

Introduction to JupyterLab and Notebooks.

Learn to use Jupyter notebooks to modify and run code as part of learning exercises.

Sign in to try it in JupyterLab*

Introduction to OpenMP Offload. sample icon

Module 1

Introduction to OpenMP Offload.

Articulate how oneAPI can help solve the challenges of programming in a heterogeneous world.

  • Use oneAPI solutions to enable your workflows.
  • Use OpenMP Offload directives to execute code on the GPU.
  • Become familiar with using Jupyter notebooks for training throughout the course.

Sign in to try it in JupyterLab*

Manage Device Data sample icon

Module 2

Manage Device Data

Use OpenMP constructs to effectively manage data transfers to and from the device.

  • Create a device data environment and map data to it.
  • Map global variables to OpenMP devices.

Sign in to try it in JupyterLab*

OpenMP* Device Parallelism sample icon

Module 3

OpenMP* Device Parallelism

  • Explain basic GPU architecture.
  • Use OpenMP offload work-sharing constructs to fully utilize the GPU.

Sign in to try it in JupyterLab*

Ready to take off the training wheels?

Try out code samples on the Intel® DevCloud