What is an xPU?

An xPU is an auxiliary processing unit that runs inside a data center server or appliance. The term “xPU” can refer to a Data Processing Unit (DPU), Infrastructure Processing Unit (IPU), Function Accelerator Card (FAC), Network Attached Processing Unit (NAPU), or other processing units that offload and accelerate specialized tasks more efficiently than a general purpose CPU. The xPU may consist of an ASIC, FPGA, system-on-chip (SoC), and/or multi-chip module (MCM), and often includes built-in CPU cores such as Arm, x86, or RISC-V. It usually runs on a separate card inside the server but can be embedded onto the server motherboard or combined onto a single card (or motherboard) with a CPU, GPU, or other processors. An xPU usually includes a network interface and typically runs alongside and complements the CPU, but in some use cases the xPU acts as the primary server or appliance controller and replaces the CPU.

An xPU primary function is to run infrastructure tasks—such as networking, storage, security, or remote management—more efficiently than a general purpose CPU.

These tasks may include,

  • Networking: packet switching, routing, modification, filtering, encapsulation/decapsulation, or inspection
  • Storage: encryption/decryption, compression/decompression, protocol acceleration (such as NVMe® over Fabrics), or storage virtualization
  • Security: network access control, running security software (such as a firewall agent), secure remote boot, sending telemetry, or inspecting traffic and/or applications for threats
  • Application assist: mathematical functions, graphics, video, artificial intelligence, etc.

In many cases, an xPU might perform similar networking tasks to a performance NIC, but the xPU has its own CPU cores, enhanced programmability, and a broader range of offload capabilities.

Some benefits of deploying xPUs include faster and more efficient networking, storage or security functionality on servers as well as the ability to free up CPU cores so they can run primary application workloads instead of infrastructure tasks. Although adding the xPU to the system consumes additional power, servers may become more power efficient if they can offload enough functions to the xPU that run more efficiently there than on the CPU. Security may be increased by running additional security functions on the xPU and/or by isolating security and monitoring software on the xPU, where they can run in a separate domain from the main OS or hypervisor.

More Resources

Learn more about how xPUs work, where they are deployed, and why they are used by watching the SNIA Networking Storage Forum’s xPU webinars, found in the SNIA Educational Library here: