Server Interrupt Coalescing with Global Event Queue Forwarding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing server systems face high interrupt processing overhead in pure interrupt modes and high processor utilization in pure polling modes, leading to inefficiencies in software and hardware synchronization.
Innovation Solution
Implementing a method that involves reading hardware event queues, converting hardware events to software events, and forwarding them through a global event queue to optimize interrupt processing, using hardware and software event coalescing techniques to reduce overhead and processor utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If pure interrupt mode is used, then hardware notification and software synchronization are achieved, but interrupt processing overhead becomes high
Solution Approach 1:
The patent segments the interrupt processing into two parts: hardware-level interrupt coalescing (grouping multiple interrupts into fewer signals) and software-level event queue processing. This segmentation reduces the number of interrupt handlers while maintaining synchronization reliability through the global event queue mechanism.
Solution Approach 2:
The patent introduces a global event queue as an intermediary between hardware peripherals and software processes. Instead of direct interrupt-to-process mapping, events are queued in memory and consumed by worker threads, reducing context switching overhead while maintaining reliable event delivery.
2Productivity
If pure polling mode is used, then context switching overhead is reduced, but processor utilization becomes high and system response timeliness is poor
Solution Approach 1:
The patent implements periodic event queue consumption where worker threads periodically check for new events in the global event queue. This periodic action replaces continuous polling with intermittent checks, reducing processor utilization while maintaining timely response through event-driven activation.
Solution Approach 2:
The system uses self-service event notification where hardware peripherals automatically trigger event queue entries when data is ready. This eliminates the need for continuous polling and reduces processor utilization while maintaining fast response through automatic event propagation.
3Productivity
If hardware event queue is read and software event is written to global event queue, then interrupt processing overhead is reduced, but additional data conversion and queue operations are required
Solution Approach 1:
The patent merges the event queue with existing memory mapping infrastructure, allowing the global event queue to be accessed through standard memory operations. This integration hides the complexity of event conversion and queue management from the application layer while maintaining reduced interrupt overhead.
Data Source
AI summary
Disclosed are a method and apparatus for optimizing server system interrupts, a device and a medium, which relate to the field of servers. The method is applied to a server system, and comprises: when a peripheral driver of a kernel space monitors an interrupt request signal sent by a hardware peripheral, reading a hardware event queue in the hardware peripheral, so as to acquire a target hardware event in the hardware event queue; then, converting the target hardware event into a target software event by using the peripheral driver, and writing the target software event into a preset global event queue; reading the target software event in the global event queue by means of a user space, and forwarding the target software event to a corresponding target service process by means of the user space, such that the target service process processes the target. In this way, by using hardware interrupt coalescing and software event coalescing techniques, this solution may not only reduce the interrupt processing overhead, but also reduce the processor utilization.


