Neural Network Pipeline With Multifunction Units for Low-Latency Throughput

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Neural networks are expensive to deploy using general-purpose CPUs or GPUs, and GPUs provide increased throughput but suffer from poor latency in processing complex tasks like reading comprehension, language translation, and speech recognition.

Innovation Solution

A processor pipeline architecture that includes a matrix vector unit and multifunction units, where instructions are decoded and mapped for processing by specific units based on their types, allowing for efficient processing of neural network operations across multiple nodes, such as FPGAs, to leverage parallelism and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If general purpose CPUs are used to deploy neural networks, then versatility is maintained, but processing speed and throughput deteriorate

Engineering Contradiction:
ImproveversatilityVSAvoidprocessing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system segments neural network processing into distinct functional units: matrix vector units for parallel computation, multifunction units for different operation types, and specialized decoding units. This segmentation enables each unit to be optimized for specific tasks while maintaining overall system versatility through programmable control.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements multifunction units that can perform multiple neural network operations (matrix multiplication, convolution, activation functions) within a single hardware structure. The decoder can interpret different instruction types to route operations to appropriate units, providing universal neural network processing capability while achieving high throughput through hardware acceleration.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Productivity

If GPUs are used to increase throughput, then processing capacity improves, but latency deteriorates

Engineering Contradiction:
ImprovethroughputVSAvoidlatency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system pre-loads neural network weights and parameters into on-chip memory before processing begins. The pipeline architecture is pre-configured with multiple stages that can process data in parallel, reducing the time required for actual inference or training operations while maintaining high throughput capacity.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a continuous pipeline architecture where multiple operations overlap in time. While one matrix vector unit processes data, another performs activation functions, and a third prepares output. This continuous operation eliminates idle time between operations, reducing latency while maintaining high throughput through parallel processing stages.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If parallelism is exploited across multiple nodes to reduce training time, then processing speed improves, but system complexity increases

Engineering Contradiction:
Improvetraining speedVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple processing functions into integrated units on each node. Matrix vector units, multifunction units, and memory are merged into a cohesive system that can operate independently yet coordinate with other nodes. This merging reduces communication overhead and synchronization complexity while enabling parallel training across hundreds of thousands of nodes.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system employs dynamic instruction decoding and routing that adapts to different neural network operations. The decoder dynamically determines which multifunction unit should handle each operation based on the instruction type, allowing flexible parallel execution across nodes without requiring complex static scheduling mechanisms.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20210406657A1Multi-function unit for programmable hardware nodes for neural network processing
Publication Date: 2021.12.30 MICROSOFT TECHNOLOGY LICENSING LLC
  • US20210406657A1 patent drawing
  • US20210406657A1 patent drawing
  • US20210406657A1 patent drawing

AI summary

Processors and methods for neural network processing are provided. A method in a processor including a pipeline having a matrix vector unit (MVU), a first multifunction unit connected to receive an input from the MVU, 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 decoding instructions including a first type of instruction for processing by only the MVU and a second type of instruction for processing by only one of the multifunction units. The method includes mapping a first instruction for processing by the matrix vector unit or to any one of the first multifunction unit, the second multifunction unit, or the third multifunction unit depending on whether the first instruction is the first type of instruction or the second type of instruction.