VM Failover Using Disaggregated Shared Memory and Epoch Flushing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual machine failover systems require copying snapshot data across a network and restarting on the node that created the snapshot, which is inefficient and prone to data loss in the event of failure.

Innovation Solution

Implementing a method that uses disaggregated shared memory to write updates to a local cache and evicted items to a separate shared memory device, flushing the cache at epoch expiration, and transmitting the virtual CPU state to minimize data copying and loss during failover.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If snapshot data is copied across the network to a remote server, then virtual machine state can be stored for failover, but data loss occurs and recovery time increases due to network dependency

Engineering Contradiction:
Improvefailover reliabilityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments memory storage into local cache memory on the compute node and remote shared memory on separate storage nodes. This segmentation allows the system to maintain both fast local access and persistent remote storage, enabling quick failover by keeping critical VM state locally available while maintaining reliability through remote backup.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary mechanism (the disaggregated memory system with cache coherence protocols) that mediates between the compute node and remote storage. This intermediary allows the compute node to access VM state quickly through local cache while automatically synchronizing with remote storage, eliminating the need for direct network copying during normal operation and enabling fast failover.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If snapshot data is copied across the network, then virtual machine state can be stored remotely, but data copying overhead increases and efficiency decreases

Engineering Contradiction:
Improveremote storage capabilityVSAvoiddata copying efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent performs preliminary actions by pre-loading VM state data into local cache memory on compute nodes before it is needed. The system proactively maintains cached copies of frequently accessed memory pages, so when failover is needed, the data is already locally available rather than requiring network copying at the moment of failure.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent establishes continuous synchronization between local cache and remote shared memory through background processes and cache coherence protocols. This continuous action ensures data consistency is maintained over time without requiring large batch transfers, allowing the system to maintain remote storage capability while avoiding the inefficiency of repeated large-scale data copying.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of information

If virtual machine restart occurs only on the node that created the snapshot, then snapshot data can be used, but system flexibility and failover options are limited

Engineering Contradiction:
Improvesnapshot data availabilityVSAvoidfailover flexibility
Core Design Contradiction:
Loss of informationVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal shared memory system that can be accessed by multiple compute nodes. The remote shared memory becomes a universal storage resource that any compute node in the cluster can access, allowing VM state to be restored on any node rather than being restricted to the original node. This multi-functionality enables flexible failover while maintaining complete snapshot data availability.

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

Data Source

PatentUS12554652B2Virtual machine failover with disaggregated shared memory
Publication Date: 2026.02.17 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12554652B2 patent drawing
  • US12554652B2 patent drawing
  • US12554652B2 patent drawing

AI summary

According to an aspect, a computer-implemented method includes operating a program on a virtual machine on a first device having a local cache memory. Based on a determination that an epoch timer has not expired, aspects include writing one or more updates to the local cache memory and transmitting evicted items from the local cache memory to a shared memory device that is separate from the first device. Based on a determination that an epoch timer has expired, aspects include flushing the local cache memory to the shared memory device, transmitting a virtual CPU state of the virtual machine to the shared memory device, and resetting the epoch timer.