Add-on Memory Coherence Directory for Scalable Multi-Processor Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multiple processor data processing systems face scalability issues with snoopy-based memory coherence protocols, which become inefficient as system size increases, necessitating a transition to directory-based protocols but is costly and resource-intensive.

Innovation Solution

Implementing an add-on memory coherence directory that selectively uses a directory protocol for memory regions with limited sharing and a snoopy protocol for regions with extensive sharing, allowing for an incremental transition from snoopy to directory-based protocols, with a programmable threshold to define limited sharing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a snoopy protocol is used for memory coherence, then all processors can monitor all memory requests, but the system becomes inefficient and does not scale as system size increases

Engineering Contradiction:
Improvememory coherenceVSAvoidsystem scalability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the memory coherence management by dividing memory regions into different sharing categories (limited sharing vs. extensive sharing). Directory-based protocol is applied to regions with limited sharing, while snoopy protocol is used for regions with extensive sharing. This segmentation allows the system to maintain coherence reliably while scaling efficiently, as each protocol is applied only where appropriate.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic protocol selection based on runtime sharing patterns. The system monitors memory access patterns and dynamically adjusts which protocol (directory-based or snoopy) is used for each memory region. This dynamic adaptation allows the system to optimize for both coherence reliability and scalability as sharing patterns change during execution.

Inventive Principle:
Principle #15Dynamics

2Productivity

If a directory-based protocol is used for memory coherence, then system scalability is improved, but the cost and resource consumption increase significantly

Engineering Contradiction:
Improvesystem scalabilityVSAvoidprotocol implementation cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies local quality by using directory-based protocol only for memory regions with limited sharing (where it provides scalability benefits) while retaining snoopy protocol for regions with extensive sharing (where it is more cost-effective). This localized application of different protocols reduces overall system complexity and resource consumption while maintaining scalability where needed.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements partial action by applying directory-based coherence management only to the extent necessary - specifically to memory regions with limited sharing. Rather than implementing directory-based protocol system-wide (which would be excessive and costly), the system applies it partially only where scalability improvements are most beneficial, thereby reducing implementation costs while maintaining scalability advantages.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If directory-based protocol is used for all memory regions, then scalability is enhanced, but overhead increases for memory regions that would benefit more from snoopy protocol

Engineering Contradiction:
Improvesystem scalabilityVSAvoidprotocol overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies local quality by matching protocol selection to local memory region characteristics. Memory regions with limited sharing receive directory-based protocol (where scalability overhead is justified), while regions with extensive sharing receive snoopy protocol (where overhead is minimized). This local optimization reduces overall energy consumption and protocol overhead while preserving scalability benefits where they are most valuable.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS9842050B2Add-on memory coherence directory
Publication Date: 2017.12.12 BEIJING ZITIAO NETWORK TECH CO LTD
  • US9842050B2 patent drawing
  • US9842050B2 patent drawing
  • US9842050B2 patent drawing

AI summary

A mechanism is provided for memory coherence in a multiple processor system. Responsive to a memory access resulting in a cache miss in a given processor, the processor determines whether a memory region being accessed is marked as directory-based. Responsive to the given processor determining the memory region is marked as directory-based, the given processor accesses a directory entry corresponding to the memory region to identify a home chip for the page using a directory-based protocol. The given processor forwards the memory access request to the home chip to perform the memory access.