Transactional Memory Support for CXL Devices

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Compute Express Link (CXL) devices lack support for transactional memory operations, leading to performance issues due to the absence of synchronization mechanisms that ensure data consistency across multiple entities accessing shared memory regions, resulting in overhead and potential logical inconsistencies.

Innovation Solution

Implementing transactional memory operations between CXL devices and host processors using tags to track reads and writes, allowing speculative execution without locks and rollback mechanisms to handle conflicts, thereby expanding the CXL architecture to support Intel TSX-type transaction flows.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If locking mechanisms are used to ensure data consistency in CXL devices, then data consistency is improved, but performance deteriorates due to overhead

Engineering Contradiction:
Improvedata consistencyVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent replaces the mechanical locking system with a transactional memory system that uses speculative execution and conflict detection through coherence traffic monitoring. Instead of physically blocking access with locks, the system allows concurrent access and resolves conflicts through rollback mechanisms when conflicts are detected, eliminating lock overhead while maintaining consistency.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent introduces an intermediary conflict detection mechanism that monitors coherence traffic on the CXL link to detect conflicts between transactions. This intermediary layer allows multiple transactions to proceed speculatively without direct locking, and only intervenes when actual conflicts are detected, thereby reducing overhead while ensuring consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If transactional memory operations are implemented without locks, then performance is improved, but data consistency deteriorates due to lack of synchronization

Engineering Contradiction:
ImproveperformanceVSAvoiddata consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback by monitoring coherence traffic on the CXL link to detect conflicts between speculative transactions. The system continuously observes memory access patterns and provides feedback when conflicts are detected, triggering rollback of affected transactions to maintain consistency without requiring locks.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary conflict detection by monitoring coherence traffic before transactions complete, allowing the system to identify potential consistency issues early and initiate rollback procedures proactively. This preliminary action ensures consistency is maintained without requiring post-conflict resolution mechanisms.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If CXL architecture is expanded to support transactional memory operations, then functionality is improved, but device complexity increases

Engineering Contradiction:
ImprovefunctionalityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent achieves universality by designing the CXL device to handle both traditional locked transactions and new speculative transactional memory operations through a unified architecture. The same coherence traffic monitoring and conflict detection mechanisms serve multiple transaction types, adding functionality without proportionally increasing complexity.

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

Data Source

PatentUS20230022544A1Transactional memory support for compute express link (CXL) devices
Publication Date: 2023.01.26 INTEL CORP
  • US20230022544A1 patent drawing
  • US20230022544A1 patent drawing
  • US20230022544A1 patent drawing

AI summary

In one embodiment, an apparatus couples to a host processor over a Compute Express Link (CXL)-based link. The apparatus includes a transaction queue to queue memory transactions to be completed in an addressable memory coupled to the apparatus, a transaction cache, conflict detection circuitry to determine whether a conflict exists between memory transactions, and transaction execution circuitry. The transaction execution circuitry may access a transaction from the transaction queue, the transaction to implement one or more memory operations in the memory, store data from the memory to be accessed by the transaction operations in the transaction cache, execute operations of the transaction, including modifying data from the memory location stored in the transaction cache, and based on completion of the transaction, cause the modified data from the transaction cache to be stored in the memory.