Shielding Real-Time Workloads from OS Jitter via RCU Suppression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Expedited RCU grace periods induce OS jitter, which adversely affects real-time applications, particularly event-driven workloads, due to increased latency irregularities caused by interprocessor interrupts.

Innovation Solution

A kernel parameter is set to suppress expedited RCU grace periods, invoking a normal non-expedited RCU grace period instead, thereby reducing OS jitter and stabilizing real-time workloads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If expedited RCU grace periods are used, then update latency is reduced, but OS jitter increases due to interprocessor interrupts

Engineering Contradiction:
Improveupdate latencyVSAvoidOS jitter
Core Design Contradiction:
Loss of timeVSStability of the object's composition

Solution Approach 1:

The system applies different grace period strategies to different workload types: expedited grace periods for non-real-time workloads and normal grace periods for real-time workloads. This local differentiation allows each workload type to receive optimized handling without adversely affecting others, resolving the contradiction between update latency and OS jitter stability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically selects between expedited and normal grace periods based on the real-time workload characteristics and timing requirements. By making the grace period type dynamic rather than static, the system can adapt to changing conditions and avoid introducing jitter to real-time workloads while maintaining fast updates for non-real-time operations.

Inventive Principle:
Principle #15Dynamics

2Stability of the object's composition

If normal non-expedited RCU grace periods are used, then OS jitter is reduced for real-time workloads, but update latency increases

Engineering Contradiction:
ImproveOS jitterVSAvoidupdate latency
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The system applies different grace period strategies to different workload types: normal grace periods for real-time workloads and expedited grace periods for non-real-time workloads. This local differentiation allows each workload type to receive optimized handling without adversely affecting others, resolving the contradiction between update latency and OS jitter stability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system segments the grace period handling into separate paths for real-time and non-real-time workloads. By dividing the unified grace period mechanism into distinct segments, the system can optimize each segment independently, using normal grace periods to protect real-time workloads from jitter while using expedited grace periods for faster updates in non-real-time contexts.

Inventive Principle:
Principle #1Segmentation

3Stability of the object's composition

If a kernel parameter is set to suppress expedited RCU grace periods, then real-time workload stability is improved, but non-real-time workload performance deteriorates

Engineering Contradiction:
Improvereal-time workload stabilityVSAvoidnon-real-time workload performance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The system dynamically selects between expedited and normal grace periods based on the real-time workload characteristics and timing requirements. By making the grace period type dynamic rather than static, the system can adapt to changing conditions and avoid introducing jitter to real-time workloads while maintaining fast updates for non-real-time operations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system applies different grace period strategies to different workload types: normal grace periods for real-time workloads and expedited grace periods for non-real-time workloads. This local differentiation allows each workload type to receive optimized handling without adversely affecting others, resolving the contradiction between update latency and OS jitter stability.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10162644B2Shielding real-time workloads from OS jitter due to expedited grace periods
Publication Date: 2018.12.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10162644B2 patent drawing
  • US10162644B2 patent drawing
  • US10162644B2 patent drawing

AI summary

A technique for shielding real-time workloads from operating system (OS) jitter due to expedited read-copy update (RCU) grace periods. In accordance with the disclosed technique, a kernel parameter is set to indicate that expedited RCU grace periods are to be suppressed. The kernel parameter is checked to see if it is set. A normal non-expedited RCU grace period is invoked in response to attempted invocation of an expedited RCU grace period if the check reveals that the kernel parameter is set.