Daemon-Assisted Batched Polling in User Space

Publikation: Hochschulschrift/AbschlussarbeitDiplomarbeit

Beitragende

  • Fabius Mayer-Uhma - (Autor:in)

Abstract

High-performance computing systems and modern data centers rely on RDMA to provide low-latency, high-bandwidth communication between nodes. Applications commonly access asynchronous network resources using either busy polling or interrupt-driven, event-based mechanisms. Busy polling dedicates a CPU core to continuously monitor completion queues and execute processing code upon RDMA operation completion. While this approach achieves sub-microsecond detection latency, it wastes CPU cycles on idle resources and does not scale under oversubscription, leading to increased latency due to core contention and higher energy consumption. In contrast, event-based approaches rely on the NIC to notify the operating system via interrupts, allowing waiting processes to block and freeing CPU cores. Although this method suits oversubscribed systems better and reduces energy usage, interrupt handling and subsequent rescheduling of user processes introduce multi-microsecond latency overhead.

Daemon-Assisted Batched Polling (DABP) occupies a middle ground between these two extremes by delegating completion queue polling to a centralized daemon. Application processes register their completion queues with the daemon and block while waiting for completions. The daemon continuously monitors registered queues and selectively wakes the corresponding application processes upon completion, avoiding process-local busy waiting.

This thesis presents the design and implementation of DABP for InfiniBand in user space on GNU/Linux without requiring kernel modifications. The implementation uses a polling daemon in combination with futex-based synchronization to block and resume application processes. For MPI workloads, integration targets the middleware layer, leaving individual applications unchanged. A fully transparent mode replaces the libibverbs polling verb directly and requires no application source changes. Experimental results show that DABP reduces average detection latency compared to interrupts from ∼3.7 µs to ∼1.8 µs for locality-aware daemon placements. A comprehensive evaluation using InfiniBand verbs microbenchmarks, MPI application benchmarks and the Valkey in-memory store examines the impact of DABP under different daemon placement strategies and process locality configurations, highlighting its benefits in oversubscribed environments and identifying opportunities for further optimization.

Details

OriginalspracheEnglisch
QualifizierungsstufeDipl.-Inf.
Gradverleihende Hochschule
Betreuer:in / Berater:in
  • Bierbaum, Jan, Betreuer:in
  • Schirmeier, Horst, Prüfern:in
  • Asmussen, Nils, Gutachter:in
Datum der Verteidigung (Datum der Urkunde)29 Mai 2026
PublikationsstatusVeröffentlicht - 15 Juli 2026
No renderer: customAssociatesEventsRenderPortal,dk.atira.pure.api.shared.model.researchoutput.Thesis