Sparse Weight Matrix Processing for Reconfigurable Processors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for neural network computations on smart devices face bottlenecks due to high storage, computing, and bandwidth requirements, particularly in convolution and fully-connected computations, and random sparse weights do not effectively utilize hardware resources.

Innovation Solution

A method for processing sparse data in reconfigurable processors involves dividing sparse weight matrices into unit blocks, grouping them into computing groups, and obtaining effective weight addresses to optimize computations, reducing storage and bandwidth needs while maintaining algorithm accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If random sparse weights are used to reduce storage overhead, then storage resources are reduced, but hardware computing resources and bandwidth resources cannot be fully utilized

Engineering Contradiction:
Improvestorage overheadVSAvoidhardware resource utilization
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The weight matrix is segmented into multiple blocks, and each block is processed independently. This segmentation allows the system to identify and utilize dense substructures within the sparse matrix, enabling better hardware resource utilization while maintaining storage efficiency. The block-wise processing structure facilitates parallel computation and optimizes the use of computing resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transforms the weight matrix from a fully dense format to a sparse format by changing the storage parameters. It introduces a block sparse structure that changes how data is organized and accessed, allowing the system to reduce storage overhead while creating patterns that can be efficiently processed by hardware, thus resolving the contradiction between storage reduction and resource utilization.

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If aggregated regular sparsity method is used, then storage overhead is reduced, but algorithm accuracy deteriorates

Engineering Contradiction:
Improvestorage overheadVSAvoidalgorithm accuracy
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent applies different processing strategies to different blocks of the weight matrix. By identifying blocks with higher density and processing them differently from sparser blocks, the method preserves important computational information locally while maintaining overall sparsity. This local quality approach ensures that algorithm accuracy is maintained in critical regions while still achieving storage reduction globally.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent performs preliminary analysis of the weight matrix to identify dense substructures and patterns before the main computation. This preliminary action involves examining the sparsity pattern and organizing blocks in a way that preserves computational accuracy. By preparing the data structure in advance with block-wise organization, the method ensures that subsequent computations maintain high accuracy while benefiting from reduced storage requirements.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If sparse weights are used to reduce bandwidth requirements, then bandwidth resources are reduced, but computing efficiency decreases

Engineering Contradiction:
Improvebandwidth resourcesVSAvoidcomputing efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

By segmenting the weight matrix into blocks, the patent enables more efficient data access patterns. The block structure allows the system to load and process data in optimized chunks, reducing the total bandwidth required for data transmission while maintaining computing efficiency. The segmented approach facilitates better cache utilization and reduces memory access overhead.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a dynamic block-wise processing approach where the computation adapts to the actual data distribution. By dynamically selecting which blocks to process and how to process them based on their density and importance, the system optimizes the trade-off between bandwidth usage and computing efficiency. This dynamic approach ensures that critical computations receive adequate bandwidth while less important operations utilize reduced bandwidth.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230068450A1Method and apparatus for processing sparse data
Publication Date: 2023.03.02 BEIJING TSINGMICRO INTELLIGENT TECH CO LTD
  • US20230068450A1 patent drawing
  • US20230068450A1 patent drawing
  • US20230068450A1 patent drawing

AI summary

The disclosure provides a method and apparatus for processing sparse data. The method is applied to a reconfigurable processor that includes a PE array, and the PE array includes P×Q PE units. The method includes: dividing a sparse weight matrix to be calculated into at least one unit block; grouping a plurality of unit blocks into a computing group; and obtaining an effective weight address corresponding to each effective weight in the computing group.