Transactional Cache Conflict Detection Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current hardware transactional memory systems face high power consumption and coarse detection granularity, leading to inefficient transaction conflict detection and potential misdetection.

Innovation Solution

A processing node with a transactional cache that caches shared data and communicates via a dedicated interface, allowing for fine-grained conflict detection by determining access status and sequence, reducing unnecessary conflict checks and power usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If tracking detection is performed on all operated cache lines in hardware transactional memory, then transaction conflict detection can be implemented, but high system power consumption is caused

Engineering Contradiction:
Improvetransaction conflict detectionVSAvoidsystem power consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent divides the cache into separate cache partitions, with specific partitions dedicated to transactional memory operations. This segmentation allows the system to track only the cache lines relevant to transactions rather than all cache lines, reducing power consumption while maintaining conflict detection capability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements different tracking mechanisms for different cache regions. Transactional cache lines have detailed tracking information for conflict detection, while non-transactional cache lines use simpler tracking. This local differentiation reduces overall power consumption by applying detailed tracking only where necessary.

Inventive Principle:
Principle #3Local quality

2Reliability

If tracking detection is performed on all operated cache lines, then transaction conflict detection can be implemented, but detection granularity is relatively coarse causing misdetection

Engineering Contradiction:
Improvetransaction conflict detectionVSAvoiddetection granularity
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The patent further segments cache lines into finer granularity units within transactional cache partitions. By dividing cache lines into smaller sub-units and tracking them individually, the system achieves finer detection granularity that prevents misdetection while maintaining efficient power usage through selective tracking.

Inventive Principle:
Principle #1Segmentation

3Reliability

If a dedicated cache mechanism is added in L1 cache for transactional memory, then transaction conflict detection and rollback mechanisms can be implemented, but device complexity increases

Engineering Contradiction:
Improvetransaction conflict detectionVSAvoidcache mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges transactional cache functionality with the existing L1 cache structure by creating dedicated partitions within L1 rather than adding completely separate cache mechanisms. This integration approach reduces device complexity by reusing existing cache infrastructure while still providing the necessary transactional memory support.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The transactional cache partitions are designed to serve multiple functions: they provide conflict detection, support rollback operations, and maintain data consistency. This multi-functionality reduces the need for separate dedicated mechanisms for each function, thereby reducing overall device complexity.

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

Data Source

PatentEP3404537B1Processing node, computer system and transaction conflict detection method
Publication Date: 2021.12.01 HUAWEI TECH CO LTD
  • EP3404537B1 patent drawingFigure 1
  • EP3404537B1 patent drawingFigure 2
  • EP3404537B1 patent drawingFigure 3

AI summary

This application discloses a processing node, a computer system, and a transaction conflict detection method. The processing node includes a processing unit and a transactional cache. When the processing unit obtains an instruction of a transaction for accessing shared data, the processing unit accesses the transactional cache according to the operation instruction, where the transactional cache is configured to cache shared data of a transaction that is being processed by the processing node, and the shared data is data that can be accessed by both the processing node and another processing node. If the transactional cache determines that the operation instruction fails to hit a cache line cache line in the transactional cache, the transactional cache sends a destination address in the operation instruction to a transactional cache in the another processing node, and receives status information that is of a cache line hit by the destination address and that is returned by the transactional cache in the another processing node. Further, the transactional cache determines, based on the status information received by the transactional cache, whether the operation instruction conflicts with an operation instruction that is being executed by the another processing node.