Unified Logical Cache for Failover Node Resource Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In modern computing systems with mirrored compute nodes, a significant portion of system resources is underutilized due to mirroring, which does not participate in active data processing operations, leading to inefficient use of total system resources.

Innovation Solution

A managing compute node determines whether a first and second compute node, where the second is a mirrored copy of the first, combines their local caches into a unified logical cache, and directs memory access requests to the appropriate cache, allowing active use of the mirrored cache and ensuring continued operation even if one node fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If compute nodes are mirrored for failover capability, then system reliability is improved, but resource utilization deteriorates due to underutilized mirrored resources

Engineering Contradiction:
Improvesystem reliabilityVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The mirrored compute node's local cache is made multi-functional by allowing it to serve both as a failover backup and as an active caching resource. The managing compute node directs memory access requests to appropriate caches in the unified logical cache, enabling the mirrored node's cache to actively participate in data processing operations while maintaining its failover capability.

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

Solution Approach 2:

The patent combines the local caches of the first compute node and its mirrored copy into a unified logical cache. This merging allows both cache resources to work together as a single logical entity, improving resource utilization while maintaining the reliability benefits of mirroring. The managing compute node receives memory access requests and directs them to the appropriate cache within the unified logical cache.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If local cache is combined into unified logical cache, then resource utilization is improved, but system complexity increases due to cache management overhead

Engineering Contradiction:
Improveresource utilizationVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The managing compute node acts as an intermediary between memory access requests and the unified logical cache. It receives memory access requests and intelligently directs them to the appropriate cache (either the first compute node's cache or the second compute node's cache), abstracting away the complexity of cache management from the rest of the system while maintaining high resource utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If mirrored compute nodes are used, then failover capability is improved, but active data processing capacity deteriorates due to non-participating mirrored nodes

Engineering Contradiction:
Improvefailover capabilityVSAvoidactive data processing capacity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent enables continuous useful action by allowing the mirrored compute node's cache to actively participate in data processing operations rather than remaining idle. The unified logical cache ensures that both the primary and mirrored node caches are continuously utilized for active data processing, while the failover capability is maintained through the unified cache architecture.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS9460014B2Sharing local cache from a failover node
Publication Date: 2016.10.04 LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD
  • US9460014B2 patent drawing
  • US9460014B2 patent drawing
  • US9460014B2 patent drawing

AI summary

Sharing local cache from a failover node, including: determining, by a managing compute node, whether a first compute node and a second compute node each have a local cache, where the second compute node is a mirrored copy of the first compute node; responsive to determining that the first compute node and the second compute node each have a local cache, combining, by the managing compute node, local cache on the first compute node and local cache on the second compute node into unified logical cache; receiving, by the managing compute node, a memory access request; and sending, by the managing compute node, the memory access request to an appropriate local cache in the unified logical cache.