Sparse Convolution Index Mapping for Irregular Memory Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Convolution operations on sparse data in artificial neural networks are inefficient due to irregular memory access patterns, leading to increased processing time, particularly in applications like autonomous driving and object recognition.

Innovation Solution

A method and device that generate mapping information between input and output data locations in sparse data, allowing for efficient convolution operations by extracting index information, generating location information, and creating operation rules to perform calculations only on valid data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If convolution operation is performed on sparse data using conventional methods, then the convolution operation can be completed, but the processing time increases significantly due to irregular memory access patterns

Engineering Contradiction:
Improveconvolution operation speedVSAvoidprocessing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-generating mapping information that records the correspondence between input data locations and output data locations before the convolution operation begins. This mapping information is created in advance based on the sparse data structure, allowing the convolution operation to proceed efficiently without real-time location calculations, thus reducing processing time while maintaining correct convolution results

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces mapping information as an intermediary element between the sparse input data and the convolution operation. This mapping information acts as a mediator that translates irregular sparse data locations into a format suitable for efficient processing, enabling regular memory access patterns during convolution without requiring the original sparse data structure

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If convolution operation is performed on sparse data, then the operation can be completed, but unnecessary operations are performed on invalid data locations

Engineering Contradiction:
Improveconvolution operation efficiencyVSAvoidcomputational energy
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent applies the taking out principle by extracting only the valid data locations from the sparse input data and recording them in the mapping information. Instead of processing the entire dense data structure, the method extracts and processes only the necessary valid data points, eliminating wasted computational energy on invalid or empty locations while maintaining the integrity of the convolution operation

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by performing convolution operations only on the subset of data locations that contain valid information, as identified by the mapping information. Rather than executing full convolution across all possible locations (excessive action), the method selectively applies the operation only where needed, improving efficiency without sacrificing accuracy

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20240338419A1Method and apparatus for sparse input-output index generation of sparse convolution
Publication Date: 2024.10.10 INDUSTRY UNIVERSITY COOPERATION FOUNDATION HANYANG UNIVERSITY
  • US20240338419A1 patent drawing
  • US20240338419A1 patent drawing
  • US20240338419A1 patent drawing

AI summary

A method of convolution operation based sparse data using artificial neural network comprises: a step of extracting index information, location information about a valid data where actual data exists in an input data; a step of generating first location information including computable row information where actual operations are performed in a kernel based on a path along which the kernel moves to perform a convolution operation on the input data and the index information; a step of generating second location information including computable column information where an actual operation is performed in the kernel based on the first location information, the index information, and the kernel size; a step of generating an operation rule for each point of the valid data and convolution output data based on the index information, and the first and second location information; and a step of performing the convolution operation based on the operation rule.