Mitigating CPU Frontend for Complex Data Plane Applications

Author:  
Yihan Dang
,  Hao Li , 
Ze Xia
, 
Jiajun Luan
, and  Peng Zhang
Proceedings of USENIX NSDI '26

People

Ze Xia
Ze Xia
Alumnus
Peng Zhang
Professor

Abstract

The functionality and requirement of modern networks are becoming increasingly complex, giving rise to Complex Data Plane Applications (CDPA) with rich semantics but often limited performance. However, many existing optimizations fail to improve the performance of CDPAs. This is because CDPAs usually come with excessively large code size, which is often two orders of magnitude larger than today's L1 instruction cache (I-cache) size, causing the CPU to frequently stall on accessing instructions, thus presenting a distinct performance profile that bounds on CPU frontend. This paper proposes NanoPL, an I-cache-friendly new execution model that shuffles the packet processing logic to efficiently mitigate CPU frontend for CDPAs. Stemming from the common execution pattern of CDPAs, NanoPL analyzes its code to ensure semantic consistency after shuffling. By collecting performance profile of CDPAs over underlying traffic, NanoPL partitions CDPAs into execution stages and conducts I-cache-friendly shuffling policy. Experiments show that NanoPL can achieve 17.2%~30.2% higher throughput over real world CDPAs due to the reduction of I-cache misses by up to 86.4%.

Resources

BibTeX

@inproceedings {dang2026nanopl,
  author = {Yihan Dang and Hao Li and Ze Xia and Jiajun Luan and Peng Zhang},
  title = {Mitigating {CPU} Frontend for Complex Data Plane Applications},
  booktitle = {23rd USENIX Symposium on Networked Systems Design and Implementation (NSDI 26)},
  year = {2026},
  url = {https://www.usenix.org/conference/nsdi26/presentation/dang},
  publisher = {USENIX Association},
  month = may
}