Memristive Accelerator Sparse Weight Partitioning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Sparse weight matrices in artificial neural networks lead to inefficient inference processes due to trivial computations and high energy consumption, as they contain a large number of zero-value coefficients that result in multiplying or adding zeros during matrix-vector multiplication operations.

Innovation Solution

Partitioning the sparse weight matrix into sub-blocks, where one sub-block contains only zero-value weights and another contains non-zero value weights, and assigning non-zero weights to clusters of memristor crossbars, while cutting off power to clusters without non-zero weights to reduce energy consumption and improve performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If sparse weight matrices are used in artificial neural networks, then the network can represent complex patterns with fewer parameters, but the inference process becomes inefficient due to trivial computations involving zero-value coefficients

Engineering Contradiction:
Improveweight matrix complexityVSAvoidinference speed
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the weight matrix into sparse blocks (containing zero-value coefficients) and dense blocks (containing non-zero coefficients). This segmentation allows the system to process only the dense blocks during inference, eliminating trivial computations involving zeros while maintaining the parameter efficiency of sparse representations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by computing only the necessary dense blocks rather than performing full matrix-vector multiplication. This selective computation approach processes only the relevant portions of the weight matrix that contribute to the output, avoiding wasteful operations on zero-value coefficients.

Inventive Principle:
Principle #16Partial or excessive action

2Stability of the object's composition

If sparse weight matrices with zero-value coefficients are processed, then the network maintains its sparse structure, but energy consumption increases due to performing trivial computations such as multiplying by zeros

Engineering Contradiction:
Improvesparse structure preservationVSAvoidinference energy consumption
Core Design Contradiction:
Stability of the object's compositionVSUse of energy by moving object

Solution Approach 1:

The patent extracts and identifies zero-value coefficient blocks from the weight matrix, separating them from the computational path. By taking out these sparse blocks and representing them efficiently without performing actual computations on them, the system preserves the sparse structure while eliminating the energy-wasting trivial multiplications.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system performs partial computation by selectively processing only dense blocks and skipping sparse blocks entirely. This approach maintains the mathematical correctness of the sparse matrix multiplication while avoiding the energy consumption associated with computing operations on zero-value coefficients.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If all clusters in the circuit are kept active to handle potential non-zero weights, then the system maintains flexibility for weight assignment, but energy consumption increases due to powering unused clusters

Engineering Contradiction:
Improveweight assignment flexibilityVSAvoidcluster power consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by stationary object

Solution Approach 1:

The patent performs preliminary identification of which weight blocks are zero-value and which are dense before the inference process begins. Based on this pre-computed sparsity pattern, the system pre-configures which clusters should be active and which can be powered down, ensuring that only necessary computational resources are consumed while maintaining the ability to assign weights dynamically.

Inventive Principle:
Principle #10Preliminary action

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach enhances the efficiency of artificial neural network inference by minimizing trivial computations and reducing energy usage by approximately 10 times compared to traditional methods.

Implementation Method 1

Each of the memristors may be resistive random access memory (RRAM), conductive-bridging random access memory (CBRAM), phase-change memory (PCM)

Methodology Applied
Scientific EffectResistive memory storage: Electrical Resistance

Implementation Method 2

conductive-bridging random access memory (CBRAM)

Methodology Applied
Scientific EffectConductive-bridging: Conduction (electrical)

Data Source

PatentUS11816563B2Method of enabling sparse neural networks on memresistive accelerators
Publication Date: 2023.11.14 SAMSUNG ELECTRONICS CO LTD
  • US11816563B2 patent drawing
  • US11816563B2 patent drawing
  • US11816563B2 patent drawing

AI summary

A method of storing a sparse weight matrix for a trained artificial neural network in a circuit including a series of clusters. The method includes partitioning the sparse weight matrix into at least one first sub-block and at least one second sub-block. The first sub-block includes only zero-value weights and the second sub-block includes non-zero value weights. The method also includes assigning the non-zero value weights in the at least one second sub-block to at least one cluster of the series of clusters of the circuit. The circuit is configured to perform matrix-vector-multiplication (MVM) between the non-zero value weights of the at least one second sub-block and an input vector during an inference process utilizing the artificial neural network. The sub-blocks containing all zero elements are power gated, thereby reducing overall energy consumption for inference.