Fabric Controller Persistent Flush Mode Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computer systems face data loss during power outages or resets due to inadequate time to flush modified data from caches to persistent memory, especially in systems with complex data fabrics and varying latency tolerances.
Innovation Solution
A fabric controller selects between basic and global persistent flush modes based on available latency, using hardware for global flushes when sufficient and software for basic flushes when time is limited, to ensure data visibility and durability without system disruption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a global persistent flush mode is used to flush all modified data from caches to persistent memory, then data durability and visibility are improved, but the flushing latency increases and may exceed available time during terminal events
Solution Approach 1:
The patent segments the flush operation into two distinct modes: global persistent flush mode (flushing all modified data from all caches across the data fabric) and basic persistent flush mode (flushing only locally available modified data). This segmentation allows the system to select the appropriate flush scope based on available latency, thereby resolving the contradiction between comprehensive data durability and acceptable flushing time.
Solution Approach 2:
The patent introduces dynamic mode selection between global and basic persistent flush modes based on real-time assessment of available latency. The fabric controller dynamically determines which mode to operate in by comparing predicted global flush latency against available latency, enabling adaptive optimization that balances data durability requirements with time constraints during terminal events.
2Reliability
If the system uses hardware-controlled global flush operations, then data visibility and durability are improved, but the device complexity and control overhead increase
Solution Approach 1:
The patent introduces a fabric controller as an intermediary component that manages the complexity of global flush operations. This mediator assesses available latency, predicts global flush latency, and selects between global and basic persistent flush modes, thereby centralizing control logic and reducing the complexity burden on individual caches and processing elements within the data fabric.
Solution Approach 2:
The patent implements a feedback mechanism where the fabric controller continuously monitors system state (available latency) and adjusts flush mode selection accordingly. The controller receives feedback about terminal events and latency conditions, then dynamically switches between global and basic persistent flush modes to optimize data visibility while managing control overhead through intelligent decision-making.
3Adaptability or versatility
If the system switches between different flush modes dynamically, then adaptability to changing conditions is improved, but the complexity of mode selection and control logic increases
Solution Approach 1:
The patent enables the system to self-adjust between global and basic persistent flush modes through automated latency assessment and mode selection performed by the fabric controller. The system monitors its own state (available latency, terminal events) and autonomously selects the appropriate flush mode without external intervention, thereby improving adaptability while containing complexity within the controller's decision-making logic.
4Loss of time
If a basic persistent flush mode is used to reduce flushing latency, then response time during terminal events is improved, but data durability and visibility may be compromised
Solution Approach 1:
The patent applies partial action by implementing a basic persistent flush mode that flushes only the subset of modified data locally available at the time of the terminal event, rather than attempting to flush all modified data across the entire data fabric. This partial flush ensures timely response by salvaging what can be saved quickly, while accepting that some data may not be durable if the global flush cannot complete in time.
Data Source
AI summary
Selecting between basic and global persistent flush modes is described. In accordance with the described techniques, a system includes a data fabric in electronic communication with at least one cache and a controller configured to select between operating in a global persistent flush mode and a basic persistent flush mode based on an available flushing latency of the system, control the at least one cache to flush dirty data to the data fabric in response to a flush event trigger while operating in the global persistent flush mode, and transmit a signal to switch control to an application to flush the dirty data from the at least one cache to the data fabric while operating in the basic persistent flush mode.


