Dynamic Cache Policy Selection for Neural Network Inference

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processor cache eviction policies in neural network inference applications are not optimized, leading to performance bottlenecks due to inefficient memory access, which affects the performance and efficiency of neural network training and inference tasks.

Innovation Solution

Implementing application-selectable cache eviction policies that allow for dynamic switching and optimization based on the specific requirements of different layers of a neural network, using a combination of cache policies such as LRU and ARC, to improve memory access efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a single fixed cache eviction policy is used for all neural network layers, then the device complexity is reduced and ease of operation is improved, but the processing speed and memory access efficiency deteriorate due to inability to optimize for different layer requirements

Engineering Contradiction:
Improveprocessing speedVSAvoidcache policy complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent implements dynamic cache policy selection by allowing the system to switch between multiple eviction policies (LRU, LFU, FIFO, Random) based on the specific requirements of different neural network layers. The processor dynamically selects and applies appropriate cache policies during execution rather than using a fixed policy, thereby optimizing processing speed for diverse computational patterns while managing complexity through automated policy selection mechanisms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of cache eviction policy from a fixed state to a variable state that can be adjusted according to different neural network layer characteristics. By parameterizing the cache policy selection based on layer type, data access patterns, and performance requirements, the system achieves faster processing speeds while the complexity is managed through systematic parameter adjustment rather than arbitrary complexity.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If application-selectable cache policies are implemented for different neural network layers, then memory access efficiency and processing speed are improved, but the device complexity increases due to multiple cache policies and selection mechanisms

Engineering Contradiction:
Improveneural network inference performanceVSAvoidcache management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the cache management system by dividing it into layer-specific cache policies where different eviction strategies are applied to different neural network layers. This segmentation allows each layer to have optimized cache behavior tailored to its specific access patterns, improving overall productivity while managing complexity through modular, layer-wise policy assignment rather than monolithic cache management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent incorporates feedback mechanisms where the system monitors cache performance metrics and automatically adjusts policy selection based on observed access patterns and performance outcomes. This feedback-driven approach improves neural network inference performance by continuously optimizing cache behavior while managing complexity through automated adaptation rather than manual configuration of multiple policies.

Inventive Principle:
Principle #23Feedback

3Loss of time

If dynamic cache policy switching is implemented during neural network execution, then cache miss rate is reduced and memory access efficiency is improved, but the use of energy increases due to additional control and switching operations

Engineering Contradiction:
Improvecache miss timeVSAvoidprocessor energy consumption
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by pre-determining and configuring appropriate cache policies for different neural network layers before execution begins. The system analyzes layer characteristics in advance and establishes optimal policy assignments, thereby reducing cache misses and improving access efficiency without requiring excessive runtime decision-making that would consume additional energy. The switching overhead is minimized through pre-computed policy selection.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20230236977A1Selectable cache policy
Publication Date: 2023.07.27 NVIDIA CORP
  • US20230236977A1 patent drawing
  • US20230236977A1 patent drawing
  • US20230236977A1 patent drawing

AI summary

Apparatuses, systems, and techniques to select cache policies. In at least one embodiment, a system causes one or more cache policies of one or more caches to be selected based, at least in part, on one or more neural networks to use data stored in the one or more caches.