System State Cache Update via Bitmap Polling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Event-driven refreshes of system state caches can be unreliable due to hardware transport mechanisms not being 100% reliable, leading to potential missed state change reports and increased latency in reflecting correct hardware states.

Innovation Solution

Implementing a combination of event-driven refreshes and bitmap polling to ensure the system state cache is updated, where the controller periodically polls modules for state changes, using a transport mechanism like an I2C bus or InfiniBand fabric, to detect and update cache entries with current state information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If event-driven refresh is used to update the cache, then the cache update latency is reduced, but the reliability of state change detection deteriorates due to hardware transport mechanisms not being 100% reliable

Engineering Contradiction:
Improvecache update latencyVSAvoidstate change detection reliability
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The patent applies preliminary action by having the controller periodically poll modules and check bitmap records before state changes are reliably transmitted. This proactive polling ensures that even if event-driven reports are lost, the cache will be updated during the next polling interval, thus maintaining reliability while keeping latency low.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback through a hybrid mechanism where the controller both sends event-driven refresh requests and periodically polls modules for state changes. The polling acts as a feedback loop that verifies whether state changes have been properly detected and transmitted, compensating for unreliable hardware transport mechanisms.

Inventive Principle:
Principle #23Feedback

2Reliability

If periodic polling is implemented to ensure reliable cache updates, then the reliability of state change detection is improved, but the system complexity and processing overhead increase

Engineering Contradiction:
Improvecache update reliabilityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies partial action by implementing periodic polling only for verification purposes rather than as the primary state change detection mechanism. The system uses event-driven refresh as the main approach and adds periodic polling as a supplementary reliability check, thus improving reliability without fully committing to the complexity of continuous polling.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The periodic polling mechanism serves multiple functions: it detects state changes that may have been missed by event-driven reporting, verifies the reliability of hardware transport mechanisms, and provides a fallback update path. This multi-functionality justifies the added complexity by delivering multiple benefits from a single mechanism.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If both event-driven refresh and bitmap polling are combined, then the reliability and latency of cache updates are improved, but the processing overhead and energy consumption increase

Engineering Contradiction:
Improvecache update reliabilityVSAvoidprocessing energy consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies dynamics by making the polling frequency adjustable rather than fixed. The system can dynamically adapt the polling interval based on system conditions, state change frequency, and reliability requirements. This allows the system to consume less energy during stable periods while maintaining high reliability during critical state changes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes parameters by allowing the polling interval and bitmap check frequency to be configured based on system requirements. By adjusting these parameters, the system can optimize the balance between reliability, latency, and energy consumption for different operating conditions, rather than being locked into a fixed high-overhead mode.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9384139B2Maintaining a system state cache
Publication Date: 2016.07.05 MELLANOX TECHNOLOGIES LTD(IL)
  • US9384139B2 patent drawing
  • US9384139B2 patent drawing
  • US9384139B2 patent drawing

AI summary

Methods, apparatuses and computer software products implement embodiments of the present invention that include storing, to a module memory in each of a plurality of modules having multiple sub-modules, a record containing record entries corresponding respectively to the sub-modules. Upon detecting changes in respective states of the sub-modules of a given module, the corresponding record entries are set in response to the detected changes in the states of the sub-modules of the given module. A cache containing cache entries corresponding respectively to the sub-modules in the plurality of the modules is stored to a controller memory, and the record in each of the modules is polled. Upon detecting that a given record entry of the given module has been set, from the current state information with respect to the given sub-module is requested and received, and a corresponding cache entry is updated in the cache with the current state information.