Hardware Memory Assistant for Remote Transactional Memory Coherency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In memory-centric computing, maintaining memory data consistency and cache coherency across multiple access points in remote shared memory systems is challenging, leading to high overhead in cache coherency maintenance and potential performance issues.

Innovation Solution

The implementation of hardware-assisted remote transactional memory, where memory instructions from remote processors are queued and managed by hardware memory assistants, which compare memory addresses and abort transactions that overlap, ensuring coherency with minimal overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cache coherency maintenance protocol is implemented over fabric in remote shared memory systems, then memory data consistency is maintained, but memory sharing performance is impacted due to high volume protocol overhead

Engineering Contradiction:
Improvememory data consistencyVSAvoidmemory sharing performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the cache coherency maintenance function from the fabric communication protocol and implements it locally within the remote processor's interconnect fabric. This allows coherency checks to be performed without generating high-volume protocol traffic over the external fabric, thus maintaining memory data consistency while improving memory sharing performance by eliminating protocol overhead

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary component (coherency management logic within the remote processor) that handles cache coherency maintenance locally. This intermediary processes coherency requests internally before accessing external memory, preventing the propagation of high-volume coherency protocols over the fabric and thereby maintaining both consistency and performance

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple remote processors access shared memory simultaneously, then system throughput is improved, but cache coherency issues arise leading to potential data inconsistency

Engineering Contradiction:
Improvesystem throughputVSAvoidcache coherency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements preliminary action by performing cache coherency validation checks before allowing remote processor access to shared memory. The coherency management logic validates access requests against the memory transaction queue and coherency state before permitting memory operations, thus preventing coherency issues before they occur while allowing multiple processors to access memory concurrently

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the coherency management logic continuously monitors memory access patterns and queue states, and dynamically adjusts access permissions for remote processors. This feedback loop ensures that coherency is maintained while maximizing throughput by allowing valid concurrent accesses and blocking only those that would cause conflicts

Inventive Principle:
Principle #23Feedback

3Productivity

If hardware memory assistants queue and manage memory transactions, then transaction management efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvetransaction management efficiencyVSAvoidhardware memory assistant complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies universality by designing the hardware memory assistant to perform multiple functions: queuing memory transactions, validating coherency, managing address translation, and controlling access permissions. By consolidating these diverse functions into a single multi-functional component, the patent improves transaction management efficiency while minimizing the increase in device complexity that would result from separate dedicated components for each function

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

Data Source

PatentUS10963383B2Hardware assisted remote transactional memory
Publication Date: 2021.03.30 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US10963383B2 patent drawing
  • US10963383B2 patent drawing
  • US10963383B2 patent drawing

AI summary

Hardware assisted remote transactional memory including receiving, from a first remote processor over a high-speed communications fabric, an indication of a beginning of a first memory transaction; queuing, in a first hardware memory assistant, memory instructions for the first memory transaction; receiving, from a second remote processor over the high-speed communications fabric, an indication of a beginning of a second memory transaction; queuing, in a second hardware memory assistant, memory instructions for the second memory transaction; receiving, from the first remote processor over the high-speed communications fabric, an indication of an ending of the first memory transaction; comparing memory addresses accessed in the first memory transaction to memory addresses accessed in the second memory transaction; and in response to determining that the memory addresses accessed in the first memory transaction overlap with the memory addresses accessed in the second memory transaction, aborting the first memory transaction.