Sparse Matrix Compression with Row Pointers for Fast Decompression
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Machine intelligence systems are computationally and energy intensive due to large data structures and immense discrete computations, leading to storage and memory management challenges, particularly with sparse data that encodes spatial information, and are difficult to parallelize, resulting in high resource requirements.
Innovation Solution
The development of methods and systems for rapid and efficient compression and decompression of sparse data using specialized data structures and clocked logic that evaluate data entries, extract sparse and non-sparse values, formulate row pointers, and store them in memory addresses, enabling rapid decompression and random access for efficient computation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If traditional ANNs store sparse data in conventional formats, then data storage space is occupied, but storage efficiency is low and memory management is difficult
Solution Approach 1:
The patent segments sparse matrix data into three separate components: non-sparse values, column indices, and row pointers. This segmentation allows each component to be stored independently in optimized data structures (CSR format), improving storage efficiency while maintaining the ability to reconstruct the original sparse matrix for computation
Solution Approach 2:
The patent changes the storage parameter from dense matrix format to sparse matrix format by storing only non-zero elements and their positions. This parameter change reduces the quantity of stored data while preserving the essential spatial information needed for machine intelligence computations
2Productivity
If machine intelligence systems use large data structures for computations, then computational capability is enhanced, but resource requirements increase
Solution Approach 1:
The patent extracts only the essential non-sparse data elements from the full data structure, storing them in optimized formats. This extraction reduces the quantity of stored data while preserving the computational capability needed for machine intelligence operations
Solution Approach 2:
The patent transforms the storage problem from a two-dimensional dense matrix to a one-dimensional array with auxiliary index structures. This dimensional change allows more efficient packing of data in memory while maintaining random access capability through the row pointer and column index structures
3Productivity
If sparse data is compressed for storage, then storage efficiency is improved, but decompression speed may be reduced
Solution Approach 1:
The patent performs preliminary organization of sparse data into CSR format during the compression phase, arranging non-sparse values, column indices, and row pointers in optimized sequences. This preliminary action enables faster decompression because the data is already structured for efficient reconstruction without requiring complex processing during the decompression phase
Data Source
AI summary
Methods and systems regarding the rapid and efficient compression and decompression of sparse data are disclosed. One method for compressing a set of data from a sparse matrix includes, evaluating a sequence of data entries from the set of data, extracting a sequence of sparse data values from the sequence, extracting a sequence of non-sparse data value run lengths from the sequence, formulating a set of row pointers from the sequence, storing the sequence of sparse data values in a first set of memory addresses, and storing the sequence of non-sparse data value run lengths in a second set of memory addresses. The set of row pointers identify a set of rows of the sparse matrix in both the first and second sets of memory addresses. Rapid decompression can be conducted using the row pointers.


