Neural Network Processor Zero-Skipping for Low-Power DNN Inference

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep neural networks (DNNs) require high computational complexity, making general-purpose processors like GPUs unsuitable for long-duration operations in low-power devices such as smartphones and power-over-Ethernet security cameras, where reduced power consumption is critical.

Innovation Solution

A neural network module that skips certain arithmetic operations on input and weight data by determining if entire columns or rows contain zero or near-zero values, allowing for synchronous or asynchronous processing and cooperative neuron assistance to reduce power consumption and improve throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If general-purpose processors like GPUs are used to provide high computational performance for DNN operations, then processing speed and accuracy are improved, but power consumption increases making them unsuitable for battery-powered portable devices

Engineering Contradiction:
Improvecomputational performanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The processor is divided into multiple processing elements (PEs) that can be independently controlled and powered down. Each PE processes a portion of the DNN computation, allowing the system to activate only the necessary number of PEs based on the current computational workload, thereby reducing overall power consumption while maintaining required processing performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The processor implements dynamic clock gating and power gating mechanisms that periodically activate and deactivate processing elements based on workload demands. During low-computation periods or when processing elements are not needed, their clocks are gated and power is reduced, directly addressing the power consumption issue while preserving computational capability when needed.

Inventive Principle:
Principle #19Periodic action

2Use of energy by moving object

If ASICs are used to reduce power consumption while performing DNN processing, then energy efficiency is improved, but device complexity and manufacturing difficulty increase

Engineering Contradiction:
Improvepower consumptionVSAvoidprocessor architecture complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The processor design uses a universal processing element that can be configured to perform different DNN operations (convolutions, activations, pooling) through programmable control logic rather than dedicated hardwired circuits for each operation. This reduces manufacturing complexity compared to fully custom ASICs while maintaining low power consumption through specialized architecture optimized for DNN workloads.

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

Solution Approach 2:

The processor implements dynamic reconfiguration capabilities where processing elements can be dynamically allocated and configured based on the specific DNN layer being executed. This flexibility allows the same hardware structure to adapt to different computational requirements without requiring multiple specialized ASIC designs, thereby reducing overall device complexity while maintaining energy efficiency.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If all arithmetic operations are performed on input and weight data in DNN processing, then computational accuracy is maintained, but power consumption and processing time increase due to unnecessary operations on zero or near-zero values

Engineering Contradiction:
Improvecomputational accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

The processor implements sparsity exploitation mechanisms that perform arithmetic operations only on non-zero or significant values in input and weight data. By detecting zero or near-zero elements and skipping computations involving them, the system performs partial action (only necessary computations) rather than exhaustive action on all data elements, significantly reducing power consumption while maintaining computational accuracy through selective processing.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS11341399B2Reducing power consumption in a neural network processor by skipping processing operations
Publication Date: 2022.05.24 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11341399B2 patent drawing
  • US11341399B2 patent drawing
  • US11341399B2 patent drawing

AI summary

A deep neural network (“DNN”) module can determine whether processing of certain values in an input buffer or a weight buffer by neurons can be skipped. For example, the DNN module might determine whether neurons can skip the processing of values in entire columns of a neuron buffer. Processing of these values might be skipped if an entire column of an input buffer or a weight buffer are zeros, for example. The DNN module can also determine whether processing of single values in rows of the input buffer or the weight buffer can be skipped (e.g. if the values are zero). Neurons that complete their processing early as a result of skipping operations can assist other neurons with their processing. A combination operation can be performed following the completion of processing that transfers the results of the processing operations performed by a neuron to their correct owner.