Rethinking Programmed I/O for Fast Devices, Cheap Cores, and Coherent Interconnects
Anastasiia Ruzhanskaia, Pengcheng Xu, David Cock, Timothy Roscoe

TL;DR
This paper challenges traditional DMA-based I/O interfaces, proposing that programmed I/O with cache-coherent interconnects can offer lower latency and competitive throughput for modern workloads and hardware architectures.
Contribution
It demonstrates in hardware that cache-coherent programmed I/O can outperform DMA in latency and match throughput, with practical use-cases for microservices and serverless computing.
Findings
Cache-coherent programmed I/O reduces latency in fine-grained communication.
Throughput of programmed I/O is competitive with DMA over modern interconnects.
Practical implementations show benefits in microservice and serverless workloads.
Abstract
Conventional wisdom holds that an efficient interface between an OS running on a CPU and a high-bandwidth I/O device should use Direct Memory Access (DMA) to offload data transfer, descriptor rings for buffering and queuing, and interrupts for asynchrony between cores and device. In this paper we question this wisdom in the light of two trends: modern and emerging cache-coherent interconnects like CXL3.0, and workloads, particularly microservices and serverless computing. Like some others before us, we argue that the assumptions of the DMA-based model are obsolete, and in many use-cases programmed I/O, where the CPU explicitly transfers data and control information to and from a device via loads and stores, delivers a more efficient system. However, we push this idea much further. We show, in a real hardware implementation, the gains in latency for fine-grained communication…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSemiconductor materials and devices · 3D IC and TSV technologies · Integrated Circuits and Semiconductor Failure Analysis
