Payload Cache Segmentation for CPU Interconnect Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems face high average read latency and require high bandwidth interconnects due to the use of shared caches for payload and control data, which can lead to CPU performance degradation and complex interconnect design optimization, especially when CPU processes evict payload data from the shared cache to memory.

Innovation Solution

The system splits caching into payload data stored in a payload cache located near I/O interfaces and accelerators, and control data stored in a local CPU cache, eliminating the need for a shared cache and allowing separate management and optimization of each cache without interference.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a shared cache is used for both payload data and control data, then cache utilization is improved, but average read latency increases and CPU performance degrades

Engineering Contradiction:
Improvecache utilizationVSAvoidaverage read latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The patent divides the shared cache into two separate physical caches: a payload cache for storing payload data and a local PU cache for storing control data. This segmentation allows each cache to be optimized for its specific data type, reducing read latency for both payload and control data while maintaining efficient cache utilization.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If a shared cache is used for payload and control data, then memory resource sharing is improved, but interconnect bandwidth requirements increase

Engineering Contradiction:
Improvememory resource sharingVSAvoidinterconnect bandwidth requirements
Core Design Contradiction:
Adaptability or versatilityVSPower

Solution Approach 1:

By segmenting the cache into separate payload cache and local PU cache, the patent reduces the bandwidth requirements of the interconnect between the processing unit and memory. Each cache can be accessed independently, eliminating the need for high-bandwidth interconnect to handle mixed payload and control data traffic.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If CPU processes are allowed to access the shared cache, then cache versatility is improved, but payload data eviction occurs causing performance degradation

Engineering Contradiction:
Improvecache accessibilityVSAvoidprocessing performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent creates a dedicated local PU cache for control data that is separate from the payload cache. This allows CPU processes to access control data without interfering with payload data storage. The payload cache remains dedicated to payload data, preventing eviction and maintaining high processing performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements different cache access policies for different data types. The local PU cache is optimized for control data access by CPU processes, while the payload cache is optimized for payload data storage with protection against eviction. Each cache has tailored access characteristics suited to its specific data type.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11258887B2Payload cache
Publication Date: 2022.02.22 MELLANOX TECHNOLOGIES LTD(IL)
  • US11258887B2 patent drawing
  • US11258887B2 patent drawing
  • US11258887B2 patent drawing

AI summary

In one embodiment, a computer system includes a payload sub-system including interfaces to connect with respective devices, transfer data with the respective devices, and receive write transactions from the respective devices, a classifier to classify the received write transactions into payload data and control data, and a payload cache to store the classified payload data, and a processing unit (PU) sub-system including a local PU cache to store the classified control data, wherein the payload cache and the local PU cache are different physical caches in respective different physical locations in the computer system, and processing core circuitry configured to execute software program instructions to perform control and packet processing responsively to the control data stored in the local PU cache.