Resilient Message Passing via Virtualized Compute Node Redundancy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-performance computing systems using message passing systems often fail due to hardware or software issues, leading to loss of invested time and resources, as they are not resilient to failures and cannot recover from such events.

Innovation Solution

Implementing a message passing system that executes parallel applications on multiple compute nodes, each utilizing at least two physical computing resources, providing redundancy and allowing virtualization to mask the presence of multiple physical resources, ensuring that if one resource fails, the application can continue execution on the remaining resource.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a message passing system executes parallel applications on multiple compute nodes with redundant physical computing resources, then the reliability of the system is improved, but the device complexity increases

Engineering Contradiction:
Improvesystem reliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the compute node into multiple independent physical computing resources (e.g., multiple CPUs or processor cores). Each physical resource can independently execute the application workload, enabling failover capability. The message passing system is divided into multiple instances, one per physical computing resource, allowing independent operation and failure isolation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by making each physical computing resource within a compute node have the same computational capabilities and software environment. This ensures that any physical resource can take over the workload of a failed resource without requiring different configurations or capabilities, thereby maintaining reliability while managing complexity through standardization.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If virtualization is used to mask multiple physical computing resources as a single compute node, then the ease of operation is improved, but the device complexity increases

Engineering Contradiction:
Improveease of operationVSAvoiddevice complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent introduces a virtualization layer as an intermediary between the physical computing resources and the message passing system. This virtualization layer presents a unified view of multiple physical resources as a single compute node to the application, simplifying operation. The virtualization manager handles resource allocation, failure detection, and workload migration transparently, improving ease of operation while the added complexity is confined to the virtualization infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If redundant physical computing resources are deployed for each compute node, then the reliability is improved, but the loss of energy increases

Engineering Contradiction:
Improveapplication reliabilityVSAvoidenergy consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system deploys redundant physical computing resources but keeps them in a low-power state until needed. The redundant resources are physically present and configured but not actively consuming full computational power. When a failure occurs, the redundant resource activates and takes over the workload, providing reliability while minimizing energy loss during normal operation.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The patent implements preliminary action by pre-configuring redundant physical computing resources with the necessary software environment and application code before any failure occurs. This preliminary setup allows for rapid failover without energy-intensive reconfiguration or data transfer during actual failure events, reducing overall energy consumption while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9384052B2Resilient message passing in applications executing separate threads in a plurality of virtual compute nodes
Publication Date: 2016.07.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9384052B2 patent drawing
  • US9384052B2 patent drawing
  • US9384052B2 patent drawing

AI summary

A message passing system may execute a parallel application on multiple compute nodes. Each compute node may perform a single workload on at least two physical computing resources. Messages may be passed from one compute node to another, and each physical computing resource assigned to a compute node may receive and process the messages. In some embodiments, the compute nodes may be virtualized so that a message passing system may only detect a single compute node and not the multiple underlying physical computing resources.