Sparse Matrix Hardware Accelerator with Data Management Unit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current architectures are inefficient in processing very-sparse and hyper-sparse matrix data due to high overheads and inefficiencies, particularly in accessing and processing the few non-zero elements, leading to suboptimal performance in machine learning and graph analytics applications.

Innovation Solution

A hardware accelerator architecture optimized for low-latency, parallel, random accesses is developed, featuring a data management unit with a gather-scatter unit to handle irregular memory accesses and minimize blocking overhead, allowing for efficient processing of large matrix blocks with a low-latency memory subsystem capable of handling short, irregular memory accesses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If regular dense-matrix structures and algorithms are used for sparse matrices, then processing can be performed using standard architectures, but processing and storage resources are wasted due to the substantial amount of zeroes

Engineering Contradiction:
Improvecompatibility with standard architecturesVSAvoidprocessing efficiency
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent extracts only the non-zero elements from sparse matrices for processing, eliminating the waste of processing resources on zero values. The system identifies and processes only the relevant non-zero elements while ignoring zeros, thereby improving processing efficiency without requiring complete matrix processing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different processing strategies to different parts of the matrix based on their properties. Non-zero elements receive specialized processing attention while zero elements are excluded from processing. This local differentiation optimizes resource allocation by applying computational effort only where necessary.

Inventive Principle:
Principle #3Local quality

2Productivity

If specialized algorithms and data structures are used for sparse matrices, then processing efficiency improves by avoiding waste on zero values, but high overheads and inefficiencies remain in accessing and processing the few non-zero elements

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidaccess overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the sparse matrix processing into distinct phases: identification of non-zero elements, extraction of these elements, and processing of the extracted data. This segmentation allows each phase to be optimized independently, reducing access overhead by handling only relevant data portions through dedicated processing pipelines.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary identification and extraction of non-zero elements before the main processing phase. By pre-processing the matrix to isolate non-zero elements and organize them in an accessible format, the system reduces the access overhead during the actual processing phase, as the heavy lifting of element identification is completed in advance.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If matrix operations are performed on very-sparse and hyper-sparse matrices, then machine learning and graph analytics applications can be executed, but suboptimal performance is achieved due to inefficiencies in handling the sparse structure

Engineering Contradiction:
Improveapplication capabilityVSAvoidapplication performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent changes the representation parameters of sparse matrices by transitioning from standard coordinate formats to a specialized format optimized for very-sparse and hyper-sparse structures. This parameter change in data representation enables more efficient storage and access patterns, thereby improving application performance while maintaining versatility across different machine learning and graph analytics workloads.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10146738B2Hardware accelerator architecture for processing very-sparse and hyper-sparse matrix data
Publication Date: 2018.12.04 ALTERA CORP
  • US10146738B2 patent drawing
  • US10146738B2 patent drawing
  • US10146738B2 patent drawing

AI summary

An accelerator architecture for processing very-sparse and hyper-sparse matrix data is disclosed. A hardware accelerator comprises one or more tiles, each including a plurality of processing elements (PEs) and a data management unit (DMU). The PEs are to perform matrix operations involving very- or hyper-sparse matrices that are stored by a memory. The DMU is to provide the plurality of PEs access to the memory via an interface that is optimized to provide low-latency, parallel, random accesses to the memory. The PEs, via the DMU, perform the matrix operations by, issuing random access read requests for values of the one or more matrices, issuing random access read requests for values of one or more vectors serving as a second operand, and issuing random access write requests for values of one or more vectors serving as a result.