Chained Neural Network Instructions Without Global Register Writes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Neural network processing is expensive when deployed using general-purpose CPUs or GPUs, and GPUs have poor latency despite providing increased throughput.

Innovation Solution

A hardware node with a global register and a pipeline that includes a matrix vector unit, multifunction units, and a chain architecture to process instructions efficiently, allowing for parallel execution of matrix operations and vector functions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If general purpose CPUs are used for neural network processing, then deployment flexibility is maintained, but processing cost and time increase significantly

Engineering Contradiction:
Improveneural network processing throughputVSAvoidtraining time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments the neural network processing pipeline into distinct functional units: matrix vector units for parallel matrix operations, multifunction units for vector operations and activation functions, and dedicated pipelines for each operation type. This segmentation enables simultaneous execution of multiple operations that would otherwise be sequential on a general-purpose CPU, dramatically improving training throughput while reducing overall training time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces the mechanical sequential execution model of general-purpose CPUs with a specialized hardware architecture that uses parallel processing pipelines. The matrix vector units and multifunction units operate concurrently through dedicated data paths, substituting the von Neumann architecture's sequential bottlenecks with parallel hardware acceleration, thereby increasing productivity without proportionally increasing time loss.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If GPUs are used for neural network processing, then throughput is increased, but latency remains poor

Engineering Contradiction:
Improveprocessing throughputVSAvoidprocessing latency
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system pre-loads weight matrices and activation functions into dedicated on-chip memory buffers within the matrix vector units and multifunction units. This preliminary action eliminates the need for repeated memory accesses during processing, reducing latency for each inference operation while maintaining high throughput through parallel pipeline execution. The pre-configured hardware units can immediately process incoming data without waiting for memory fetches.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces dedicated on-chip memory buffers as intermediaries between the input data and the processing units. These buffers hold weight matrices and intermediate results locally, acting as mediators that eliminate the high-latency memory access bottleneck present in GPU architectures. The intermediaries enable fast data exchange between processing stages without requiring external memory access, thereby reducing overall processing latency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If results are stored in global register after each operation, then data accessibility is improved, but memory access time increases

Engineering Contradiction:
Improvedata accessibilityVSAvoidmemory access time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The architecture implements a nested memory hierarchy where local registers within each functional unit provide immediate data access, embedded within the unit itself. This nested structure allows processing units to access frequently used data (weights, intermediate results) in their local registers without accessing the global register file, thereby maintaining ease of operation for common operations while avoiding the time penalty of global memory access. The global register serves as a higher-level cache for less frequently accessed data.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS12307355B2Neural network processing with chained instructions
Publication Date: 2025.05.20 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12307355B2 patent drawing
  • US12307355B2 patent drawing
  • US12307355B2 patent drawing

AI summary

Hardware and methods for neural network processing are provided. A method in a hardware node including a pipeline having a matrix vector unit (MVU), a first multifunction unit connected to receive an input from the matrix vector unit, a second multifunction unit connected to receive an output from the first multifunction unit, and a third multifunction unit connected to receive an output from the second multifunction unit is provided. The method includes performing using the MVU a first type of instruction that can only be performed by the MVU to generate a first result. The method further includes performing a second type of instruction that can only be performed by one of the multifunction units and generating a second result and without storing the any of the two results in a global register, passing the second result to the second multifunction and the third multifunction unit.