Page Table Cache Coherency Indicator for Heterogeneous Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache coherency mechanisms in computing devices with multiple heterogeneous processors become overwhelmed, leading to delayed responses and increased communication traffic, and software coherency mechanisms are error-prone and costly to implement.

Innovation Solution

The use of a page table with a cache coherency indicator to manage data access by specifying which types of processors have access to memory pages, reducing the need for hardware coherence directory lookups and improving efficiency by preventing unauthorized access and caching.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hardware cache coherency mechanisms are used in computing devices with multiple heterogeneous processors, then cache coherency is maintained, but communication buses and hardware coherency directories become overwhelmed with traffic, causing delayed responses and reduced productivity

Engineering Contradiction:
Improvecache coherencyVSAvoidcomputational operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the coherency management function by introducing coherency indicators in page table entries that identify which processor types may access specific memory pages. This segmentation allows the system to divide coherency enforcement into page-level granularity, reducing the need for comprehensive hardware directory lookups and decreasing communication bus traffic while maintaining coherency where required.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary coherency management by setting coherency indicators in page table entries during memory management operations. This preliminary action pre-establishes which processor types can access which memory pages, allowing processors to make access decisions without real-time hardware directory queries, thereby reducing latency and improving computational operation speed.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If hardware cache coherency mechanisms are used, then cache coherency is maintained, but the complexity of the system increases due to inundated communication buses and hardware coherency directories

Engineering Contradiction:
Improvecache coherencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the coherency management information from the hardware coherency directory system and embeds it directly in the page table entries. This extraction removes the burden of maintaining comprehensive coherency state information in hardware directories, simplifying the overall system architecture while preserving coherency guarantees through the page table-based indicators.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If software cache coherency mechanisms are used, then the load on hardware coherency mechanisms is reduced, but the mechanisms become error-prone and expensive to implement in software applications

Engineering Contradiction:
Improvehardware coherency mechanism loadVSAvoidsoftware implementation reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces page table coherency indicators as an intermediary mechanism between hardware and software coherency management. This intermediary provides a structured, hardware-supported approach that is more reliable than pure software mechanisms while placing less load on hardware coherency directories than traditional hardware-only approaches. The page table serves as the mediator that encodes coherency policies in a manageable and error-resistant manner.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10019377B2Managing cache coherence using information in a page table
Publication Date: 2018.07.10 ADVANCED MICRO DEVICES INC
  • US10019377B2 patent drawing
  • US10019377B2 patent drawing
  • US10019377B2 patent drawing

AI summary

The described embodiments include a computing device with two or more types of processors and a memory that is shared between the two or more types of processors. The computing device performs operations for handling cache coherency between the two or more types of processors. During operation, the computing device sets a cache coherency indicator in metadata in a page table entry in a page table, the page table entry information about a page of data that is stored in the memory. The computing device then uses the cache coherency indicator to determine operations to be performed when accessing data in the page of data in the memory. For example, the computing device can use the coherency indicator to determine whether a coherency operation is to be performed when a processor of a given type accesses data in the page of data in the memory.