Hybrid Parallel Programming for HPC Clusters with MPI and DPC++

Modern high-performance computing (HPC) clusters can include various nodes that contain hardware accelerators such as GPUs and FPGAs. To take full advantage of inter-node, intra-node, and accelerator-device-level parallelism, hybrid programming is required.

This webinar discusses how to do exactly that by using Data Parallel C++ (DPC++) with the Message Passing Interface (MPI), which are supported in the Intel® oneAPI Base Toolkit and Intel® oneAPI HPC Toolkit, respectively.

In this session, software specialists Karl Qi and Loc Nguyen will cover the landscape, clarifying how these two distinct standards—MPI and DPC++—can be effectively used together to (1) communicate between nodes and (2) accelerate computation on a single node using available accelerators.

  • A brief overview of MPI
  • Using the Intel® MPI Library with DPC++
  • Compiling and deploying applications on Linux and Windows
  • Target DPC++ kernels for CPUs and GPUs
  • Using MPI and DPC++ in the Intel® DevCloud

Get the software

  • Download the Intel® oneAPI Base Toolkit—includes nearly 20 dev tools and libraries for creating cross-architecture applications.
  • Download the Intel® oneAPI HPC Toolkit—includes 8 dev tools and libraries for HPC computing, including the Intel® MPI Library.
  • Sign up for an Intel® DevCloud for oneAPI account—a free development sandbox with access to the latest Intel® hardware and oneAPI software.

Other resources

  • Learn more about the DPC++ language
  • Learn more about the Intel® oneAPI DPC++ Library
  • Subscribe to the POD—Code Together is an interview series that explores the challenges at the forefront of cross-architecture development. Each bi-weekly episode features industry VIPs who are blazing new trails through today’s data-centric world. Available wherever you get your podcasts.
Karl Qi, oneAPI Technical Evangelist, Intel Corporation

As an oneAPI technical evangelist, Karl focuses on enabling HPC and AI customers to create the optimal solution for their needs using the Intel® oneAPI toolkits. He has a particular interest in software that can leverage the capabilities of heterogeneous parallel computing environments. Karl has a bachelor’s degree in Electrical Engineering from Cornell University.

Loc Nguyen, Software Engineer, Intel Corporation

Loc Q Nguyen received an MBA from University of Dallas, a master’s degree in Electrical Engineering from McGill University, and a bachelor’s degree in Electrical Engineering from École Polytechnique de Montréal. He is currently a software engineer with Intel, with interests spanning machine learning, computer networking, parallel computing, and computer graphics.

For more complete information about compiler optimizations, see our Optimization Notice.