Speculative Execution Management in Coherent Accelerator Shared Cache

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In coherent accelerator architectures, the use of 'lock' and 'unlock' techniques for managing access to shared caches leads to congestion, stalls, and system slowdowns as multiple functional units wait for their turn to access the cache, limiting the efficiency of cache utilization and access request performance.

Innovation Solution

Implementing a speculative execution technique that allows multiple functional units to access the shared cache simultaneously, with a checkpoint mechanism to roll back the cache state in case of conflicts and batch writing of modified cache lines to the host memory directory when conflicts are absent.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If lock and unlock techniques are used to manage access to shared cache, then data consistency is maintained, but system performance deteriorates due to congestion and stalls

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by setting checkpoints in the shared cache before speculative execution begins. These checkpoints capture the cache state in advance, allowing the system to quickly rollback if conflicts occur, rather than using traditional lock mechanisms that block access beforehand. This enables multiple functional units to access the cache simultaneously without waiting for locks to be released.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces a speculative execution management engine as an intermediary that mediates access requests from multiple functional units to the shared cache. This engine detects conflicts between access requests and coordinates rollback operations, replacing the traditional lock/unlock mechanism. The intermediary enables parallel access while maintaining data consistency through conflict detection and selective rollback.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If multiple functional units access the shared cache simultaneously, then processing speed improves, but conflicts between units increase

Engineering Contradiction:
Improveprocessing speedVSAvoidconflict frequency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent implements feedback by having the speculative execution management engine continuously monitor access requests from multiple functional units. When a conflict is detected between simultaneous access requests, the engine triggers a rollback to the checkpoint state and retries the requests. This feedback mechanism allows simultaneous access attempts while providing automatic conflict resolution, maintaining both high processing speed and data consistency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

By pre-establishing checkpoints before speculative execution, the system prepares rollback states in advance. This preliminary action enables rapid conflict resolution without blocking future access requests, allowing multiple functional units to continue accessing the cache simultaneously while conflicts are resolved through targeted rollbacks rather than preventive locking.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If checkpoints are set to capture cache state, then rollback capability is enabled, but memory resources are consumed

Engineering Contradiction:
Improverollback capabilityVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by setting checkpoints only in the shared cache structure where they are most needed, rather than maintaining full system state rollbacks. The checkpoints capture only the necessary cache line states at checkpoint boundaries, using minimal memory resources. This localized approach enables rollback capability while consuming far less memory than comprehensive system state saving.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses partial action by implementing checkpoints only at specific boundaries in the shared cache rather than continuously capturing all state changes. Checkpoints are set at strategic points where rollback would be most beneficial, rather than maintaining complete state information. This partial checkpointing provides sufficient rollback capability for conflict resolution while minimizing memory resource consumption.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11010209B2Speculative execution management in a coherent accelerator architecture
Publication Date: 2021.05.18 BEIJING ZITIAO NETWORK TECH CO LTD
  • US11010209B2 patent drawing
  • US11010209B2 patent drawing
  • US11010209B2 patent drawing

AI summary

Disclosed aspects relate to speculative execution management in a coherent accelerator architecture. A first access request from a first component may be detected with respect to a set of memory spaces of a single shared memory in the coherent accelerator architecture. A second access request from a second component may be detected with respect to the set of memory spaces of the single shared memory in the coherent accelerator architecture. The first and second access requests may be processed by a speculative execution management engine using a speculative execution technique with respect to the set of memory spaces of the single shared memory in the coherent accelerator architecture.