Neural Network Inference Circuit Dot Product Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current neural network computations on integrated circuits are inefficient due to the need for numerous clock cycles and resource-intensive memory operations in performing dot products, particularly in convolutional neural networks, which require significant circuit resources and power.

Innovation Solution

An integrated circuit design that includes a neural network computation fabric with multiple cores and a global channel for parallel dot product computations, post-processing operations, and efficient memory management, utilizing ternary weight values and sparse data representation to reduce resource usage and power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiply-accumulate (MAC) circuits are used to compute dot products, then computation can be performed, but numerous clock cycles are required and memory resources are consumed for storing intermediate terms

Engineering Contradiction:
Improvecomputation speedVSAvoidclock cycles
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent segments the dot product computation into multiple partial dot products, where each core computes a separate partial dot product using a subset of weight values. These partial results are then aggregated to form the complete dot product. This segmentation enables parallel computation across multiple cores, significantly reducing the total computation time and clock cycles required compared to sequential MAC operations.

Inventive Principle:
Principle #1Segmentation

2Reliability

If numerous memory operations are performed for dot product computation, then intermediate terms can be stored, but resource usage and power consumption increase

Engineering Contradiction:
Improvecomputation accuracyVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts and utilizes the sparsity property of neural network weight matrices by identifying and computing only the non-zero weight values. By taking out only the relevant non-zero elements for computation and ignoring zero values, the system reduces memory read operations, computation operations, and associated power consumption while maintaining computation accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If parallelization is implemented to speed up computation, then processing throughput increases, but circuit surface area expands

Engineering Contradiction:
Improveprocessing throughputVSAvoidcircuit surface area
Core Design Contradiction:
ProductivityVSArea of stationary object

Solution Approach 1:

The patent implements dynamic configuration of the computation fabric, where the system can adaptively allocate and reconfigure computational resources based on the specific computation requirements. The computation fabric can be dynamically configured to perform different operations (dot products, element-wise operations, reductions) and can adjust the number of active cores and their organization, enabling efficient parallelization without permanently expanding circuit surface area for all possible parallel operations.

Inventive Principle:
Principle #15Dynamics

4Adaptability or versatility

If standard dot product computation is used in convolutional neural networks, then neural network operations can be performed, but significant circuit resources are consumed

Engineering Contradiction:
Improveneural network operation capabilityVSAvoidcircuit resources
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent creates a universal computation fabric that can perform multiple types of neural network operations including dot products, element-wise additions, element-wise multiplications, and reduction operations. By designing a multi-functional computation unit that can execute various operations, the system reduces overall circuit complexity compared to having separate dedicated circuits for each operation type, while maintaining full adaptability for different neural network layer requirements.

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

Data Source

PatentUS12165043B2Data transfer for non-dot product computations on neural network inference circuit
Publication Date: 2024.12.10 AMAZON COM SERVICES LLC
  • US12165043B2 patent drawing
  • US12165043B2 patent drawing
  • US12165043B2 patent drawing

AI summary

Some embodiments provide a neural network inference circuit for executing a neural network that includes multiple layers of computation nodes. At least a subset of the layers include non-convolutional layers. The neural network inference circuit includes multiple cores with memories that store input values for the layers. The cores are grouped into multiple clusters. For each cluster, the neural network inference circuit includes a set of processing circuits for receiving input values from the cores of the cluster and executing the computation nodes of the non-convolutional layers.