# P4COM: In-Network Computation with Programmable Switches

arXiv: https://arxiv.org/abs/2107.13694 · HTML: https://mlsanity.com/paper/2107.13694/

## Key facts

- Cited by 1 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 29 Jul 2021.

## Built on by (most cited first, 1 of 1)

- [Accelerating MoE with Dynamic In-Switch Computing on Multi-GPUs](https://mlsanity.com/paper/2605.05607/) (2026)

## Abstract (arXiv)

Traditionally, switches only provide forwarding services and have no credits on computation in distributed computing frameworks. The emerging programmable switches make in-network computing (INC) possible, i.e., offloading some computation to the switch data plane. While some proposals have attempted to offload computation onto special hardwares (e.g., NetFPGA), many practical issues have not been addressed. Therefore, we propose P4COM - a user-friendly, memory-efficient, and fault-tolerant framework realizing in-network computation (e.g., MapReduce) with programmable switches. P4COM consists of three modules. First, P4COM automatically translates application logic to switch data plane programs with a lightweight interpreter. Second, P4COM adopts a memory management policy to efficiently utilize the limited switch on-chip memory. Third, P4COM provides a cutting-payload mechanism to handle packet losses. We have built a P4COM prototype with a Barefoot Tofino switch and multiple commodity servers. Through a combination of testbed experiments and large-scale simulations, we show that P4COM is able to achieve line-rate processing at 10Gbps links, and can increase the data shuffling throughput by 2-5 times for the MapReduce-style applications.
