Cache Sparing Store Bypass for L1 Cache Pollution Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processor architectures face inefficiencies in memory transactions, particularly during memory copy operations, where cache line evictions increase miss rates for data with temporal locality due to the churning of L1 caches, leading to increased traffic and performance bottlenecks.

Innovation Solution

A processor implementation that characterizes store instructions as 'no ownership' if their destination addresses are within a cache line, allowing these instructions to bypass private L1 cache updates and directly update the shared cache level, thereby reducing unnecessary cache line evictions and improving memory access patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If store instructions update private L1 cache, then data availability for subsequent loads is improved, but cache line evictions increase causing higher miss rates for data with temporal locality

Engineering Contradiction:
Improvedata availabilityVSAvoidmemory access performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by differentiating the treatment of store instructions based on their destination address. Stores to addresses within the current cache line are characterized as 'no ownership' and bypass L1 cache updates, while other stores follow traditional ownership semantics. This selective approach optimizes cache behavior for specific local memory regions without compromising overall data availability.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the parameter of cache ownership semantics for store instructions. By introducing a 'no ownership' characterization for stores within the current cache line, the system modifies the traditional read-for-ownership behavior, allowing these specific stores to bypass cache line installation and reduce unnecessary evictions while maintaining data correctness.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If traditional store instructions perform read-for-ownership to install cache lines, then data coherence is maintained, but unnecessary cache line evictions occur increasing traffic in memory hierarchy

Engineering Contradiction:
Improvedata coherenceVSAvoidmemory traffic
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent extracts the harmful read-for-ownership operation from the store instruction processing for specific cases. By identifying stores within the current cache line as 'no ownership' operations, the system removes the unnecessary cache line installation step, thereby eliminating the subsequent eviction and write-back traffic while preserving data coherence through alternative means.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent converts the potentially harmful effect of store instructions (which can cause cache churn) into a benefit by characterizing in-cache stores as 'no ownership' operations. This transformation allows these stores to bypass the expensive read-for-ownership sequence, converting what would be harmful cache pollution into an optimized no-op that reduces memory traffic.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

3Speed

If L1 cache is used for frequent small stores, then storage speed is improved, but cache pollution increases reducing effectiveness for data with temporal locality

Engineering Contradiction:
Improvestore speedVSAvoidcache pollution
Core Design Contradiction:
SpeedVSObject-generated harmful factors

Solution Approach 1:

The patent applies local quality by treating different store locations differently. Stores to addresses within the current cache line are marked as 'no ownership' and do not pollute the cache, while stores to other locations maintain traditional behavior. This selective local treatment allows fast storage without cache pollution for in-cache operations.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent converts the harmful cache pollution effect of frequent stores into a benefit by introducing the 'no ownership' characterization. This transforms the potentially polluting store operation into a beneficial fast store that bypasses cache installation, turning cache pollution into optimized performance for in-cache stores.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

Data Source

PatentUS10108548B2Processors and methods for cache sparing stores
Publication Date: 2018.10.23 MIPS TECH INC
  • US10108548B2 patent drawing
  • US10108548B2 patent drawing
  • US10108548B2 patent drawing

AI summary

In one aspect, a processor has a register file, a private Level 1 (L1) cache, and an interface to a shared memory hierarchy (e.g., an Level 2 (L2) cache and so on). The processor has a Load Store Unit (LSU) that handles decoded load and store instructions. The processor may support out of order and multi-threaded execution. As store instructions arrive at the LSU for processing, the LSU determines whether a counter, from a set of counters, is allocated to a cache line affected by each store. If not, the LSU allocates a counter. If so, then the LSU updates the counter. Also, in response to a store instruction, affecting a cache line neighboring a cache line that has a counter that meets a criteria, the LSU characterizes that store instruction as one to be effected without obtaining ownership of the effected cache line, and provides that store to be serviced by an element of the shared memory hierarchy.