Talks > 08/05/2024 Muhammad Usman

pDOCA: Offloading Emulation for BlueField DPUs

Data Processing Units (DPU) are a new class of programmable processor system on a chip (SoC) that combine industry-standard, high-performance, software-programmable, and processing elements (such as CPUs and GPUs) tightly coupled to the other SoC components.

DPUs are oriented to infrastructure computing platforms for processing software-defined networking, storage, and cybersecurity operations. DPUs can combine powerful computing, high-speed networking, and extensive programmability to deliver hardware-accelerated solutions for the most demanding workloads.

The main manufacturer of DPUs is NVIDIA, which provides them with a specific software development kit (SDK) for their BlueField DPU devices. DOCA, the SDK, is designed to unlock data center innovation by enabling the rapid creation and deployment of applications and services. DOCA provides industry-standard open application programming interfaces (API) and frameworks for, among others, networking, security, storage, high-performance computing (HPC), or artificial intelligence (AI) applications. The frameworks simplify application offload with integrated NVIDIA acceleration packages.

Despite the provided APIs, DOCA still presents an entry barrier for new users, especially HPC programmers, who are not likely to be familiar with the novel programming paradigm. OpenMP DPU Offloading Support (ODOS) framework is presented to overcome this barrier by providing DOCA-based offloading through the standard OpenMP syntax.

Unfortunately, DPU devices are not widely available in production supercomputing clusters today. Therefore, we implemented pDOCA, an emulation layer for programming using DOCA libraries without access to the DPU hardware. pDOCA uses the LD_PRELOAD mechanism of Linux to trap DOCA calls. These calls can then be translated to any other backend, such as TCP or UCX, for actual implementation. pDOCA has been specifically implemented to enable ODOS emulation for users without DPU devices. The infrastructure is composable and can be extended to improve more projects in the future.


Related Talks

Visit our forum

One of the main goals of this project is to motivate new initiatives and collaborations in the HPC field. Visit our forum to share your knowledge and discuss with other HPC experts!

About us

HPCKP (High-Performance Computing Knowledge Portal) is an Open Knowledge project focused on technology transfer and knowledge sharing in the HPC, AI and Quantum Science fields.

Promo HPCNow
Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.