Associative Structure for Transactional Memory False Positive Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Transactional memory systems face limitations in tracking large read sets due to hardware resource constraints, leading to pessimistic cache conflicts and false positives, particularly in cache-based systems where eviction can cause system-wide issues.

Innovation Solution

A system and method that utilize a second associative structure with different granularity to filter out false positives by monitoring accessed and dirty bits in page tables, allowing protection of larger memory areas and employing an overlapping range cache to track speculatively accessed locations, with the option to use a translation lookaside buffer (TLB) for efficient query and protection mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Area of stationary object

If cache-based transactional memory systems track large read sets, then more memory areas can be protected, but cache conflicts cause false positives and system reliability deteriorates

Engineering Contradiction:
Improvememory area protection scopeVSAvoidfalse positive rate
Core Design Contradiction:
Area of stationary objectVSReliability

Solution Approach 1:

The patent divides the cache index into multiple sub-indices and tracks speculative data at a coarser granularity level. Instead of tracking every individual cache line, the system tracks at the sub-index level, which reduces the number of tracking entries and minimizes false positives while still providing comprehensive memory area protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a sub-index structure as an intermediary between the cache index and the speculative data tracking. This sub-index acts as a mediator that aggregates multiple cache lines into larger groups, allowing the system to track memory areas more efficiently without the overhead of tracking every individual cache line, thus reducing false positives.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If hardware-based transactional memory uses speculative data buffers, then memory operations can be executed speculatively, but hardware resource limitations restrict the size of transactions

Engineering Contradiction:
Improvespeculative execution efficiencyVSAvoidhardware resource consumption
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent changes the granularity parameter of the tracking structure from fine-grained (individual cache lines) to coarse-grained (sub-indices). This parameter change allows the system to track larger memory areas with fewer hardware resources, as the sub-index structure requires significantly less space than tracking every individual cache line separately.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces a hierarchical dimension to the tracking structure by adding sub-indices between the cache index and the speculative data. This dimensional addition allows the system to organize tracking data in a multi-level hierarchy, which improves scalability and reduces the hardware resources needed for tracking large read sets.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Device complexity

If cache lines are evicted during transaction execution, then hardware resources are freed, but tracked data may be lost causing incorrect transaction outcomes

Engineering Contradiction:
Improvehardware resource managementVSAvoiddata tracking accuracy
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent performs preliminary tracking of speculative data at the sub-index level before cache evictions occur. By establishing the tracking structure in advance and organizing data at a coarser granularity, the system ensures that even if individual cache lines are evicted, the aggregated sub-index data remains intact and can be used to correctly determine transaction outcomes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8612694B2Protecting large objects within an advanced synchronization facility
Publication Date: 2013.12.17 ADVANCED MICRO DEVICES INC
  • US8612694B2 patent drawing
  • US8612694B2 patent drawing
  • US8612694B2 patent drawing

AI summary

A system and method are disclosed for allowing protection of larger areas than memory lines by monitoring accessed and dirty bits in page tables. More specifically, in some embodiments, a second associative structure with a different granularity is provided to filter out a large percentage of false positives. By providing the associative structure with sufficient size, the structure exactly specifies a region in which conflicting cache lines lie. If entries within this region are evicted from the structure, enabling the tracking for the entire index filters out a substantial number of false positives (depending on a granularity and a number of indices present). In some embodiments, this associative structure is similar to a translation look aside buffer (TLB) with 4 k, 2M entries.