Remote Memory Side Cache Coherency in Multi-GPU Architectures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face challenges in optimizing memory side cache updates in multi-GPU configurations, leading to inefficiencies in data processing and parallel processing operations.

Innovation Solution

The implementation of a system that efficiently manages memory side caches by utilizing a multi-GPU configuration with optimized cache management techniques, including the use of programmable logic units and modified instructions such as the DOT-product instruction and write fence attributes, to enhance data processing and parallel processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multi-GPU configuration is used to increase processing power, then productivity is improved, but device complexity increases

Engineering Contradiction:
Improveprocessing powerVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system divides the cache management functionality into separate management units, with each GPU having its own management unit that independently manages its associated cache. This segmentation allows multi-GPU systems to scale without proportionally increasing central management complexity, as each unit operates semi-autonomously while contributing to overall system productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical cache management structure that adds a new dimension of organization - caches are grouped by GPU association rather than being managed as a flat pool. This dimensional change in cache organization allows the system to handle multiple GPUs efficiently without linearly increasing management complexity, resolving the contradiction between productivity and complexity.

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

2Speed

If cache size is increased to reduce access latency, then speed is improved, but device complexity increases

Engineering Contradiction:
Improvecache access latencyVSAvoidcache management complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The system implements local cache management where each management unit optimizes cache characteristics for its specific GPU's access patterns and requirements. This local quality approach allows each cache to be tuned for minimal latency without requiring a monolithic complex management system, as each unit independently manages its own cache resources based on local needs.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The management units pre-allocate and pre-organize cache resources before GPU access occurs, preparing cache structures in advance based on predicted access patterns. This preliminary action reduces actual access latency by having data ready beforehand, while avoiding the need for complex real-time cache management during critical access paths.

Inventive Principle:
Principle #10Preliminary action

3Speed

If cache partitioning is implemented to reduce access latency, then speed is improved, but device complexity increases

Engineering Contradiction:
Improvecache access latencyVSAvoidcache partitioning complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The cache is segmented into partitions that are logically associated with specific GPUs through the management units. Each management unit controls its associated partition, creating a segmented structure that reduces access latency by providing direct access paths while keeping partitioning management simple through decentralized control rather than complex global partitioning algorithms.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240086357A1Systems and methods for updating memory side caches in a multi-GPU configuration
Publication Date: 2024.03.14 INTEL CORP
  • US20240086357A1 patent drawing
  • US20240086357A1 patent drawing
  • US20240086357A1 patent drawing

AI summary

Systems and methods for updating remote memory side caches in a multi-GPU configuration are disclosed herein. In one embodiment, a graphics processor for a multi-tile architecture includes a first graphics processing unit (GPU) having a first memory, a first memory side cache memory, a first communication fabric, and a first memory management unit (MMU). The graphics processor includes a second graphics processing unit (GPU) having a second memory, a second memory side cache memory, a second memory management unit (MMU), and a second communication fabric that is communicatively coupled to the first communication fabric. The first MMU is configured to control memory requests for the first memory, to update content in the first memory, to update content in the first memory side cache memory, and to determine whether to update the content in the second memory side cache memory.