Extended User Interrupts (xUI): Fast and Flexible Notification without Polling
Extended user interrupts (xUI) is a set of processor extensions that builds on Intel's UIPI model of user interrupts, for enhanced performance and flexibility. This paper deconstructs Intel's current UIPI design through analysis and measurement, and uses this to develop an accurate model of its timing. It then introduces four novel enhancements to user interrupts: tracked interrupts, hardware safepoints, a kernel bypass timer, and interrupt forwarding. xUI is modeled in gem5 simulation and evaluated on three use cases -- preemption in a high-performance user-level runtime, IO notification in a layer3 router using DPDK, and IO notification in a synthetic workload with a streaming accelerator modeled after Intel's Data Streaming Accelerator. This work shows that xUI offers the performance of shared memory polling with the efficiency of asynchronous notification.
Authors
- Amy Ousterhout (ORCID: https://orcid.org/0000-0001-6590-8392)
- Mohammadkazem Taram (ORCID: https://orcid.org/0000-0002-3325-5048)
- Tal Garfinkel (ORCID: https://orcid.org/0000-0003-4213-4755)
- Dean M. Tullsen (ORCID: https://orcid.org/0000-0003-3174-9316)
- Linsong Guo (ORCID: https://orcid.org/0000-0003-0207-9835)
- Danial Zuberi
- Berk Aydogmus
Institutions
- Purdue University West Lafayette (US)
- University of California San Diego (US)
Publication Details
- Published
- 2025-03-27
- DOI
- https://doi.org/10.1145/3676641.3716028
- Citations
- 4
- Primary Topic
- Parallel Computing and Optimization Techniques
- Type
- article
- Field-Weighted Citation Impact
- 9.08