Hardware Accelerated Convolution via Virtual GEMM Mapping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional machine learning algorithms consume excessive memory bandwidth and power due to the conversion of convolution operations into matrix multiplication, resulting in larger image matrices and increased memory access requests.

Innovation Solution

The implementation of a virtual GEMM space in combination with convolutional mapping hardware that maps convolution operations to processors, reducing memory bandwidth by partitioning the result area and using dedicated hardware to accelerate address calculations and padding checks, converting expensive operations into less power-consuming ones.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If convolution operations are converted into matrix multiplication using conventional algorithms, then the convolution can be performed using general-purpose processors, but memory bandwidth consumption increases due to larger image matrices and duplicative data

Engineering Contradiction:
Improveprocessor compatibilityVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments the convolution operation into distinct functional components: address generation, data retrieval, multiplication, and accumulation. By organizing the computation this way, each processor element can be optimized for specific tasks, reducing redundant memory access while maintaining compatibility with standard processor architectures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary memory structure (such as on-chip buffer memory or register file) that sits between global memory and the processing elements. This intermediary holds duplicative data locally, allowing multiple processors to access the same data without requiring repeated reads from global memory, thus reducing overall memory bandwidth consumption.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If convolution operations are converted into matrix multiplication, then the computation can be parallelized across multiple processors, but power consumption increases due to increased memory access requests

Engineering Contradiction:
Improveparallel processing capabilityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent divides the parallel processing architecture into segments where each processing element has dedicated or shared local storage. This segmentation allows parallel processors to operate simultaneously while accessing data from local rather than global memory, significantly reducing the power cost of memory access while maintaining high parallel productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-loading duplicative data into local memory structures before the parallel computation begins. This way, when multiple processors need to access the same data during parallel execution, the data is already available in fast, low-power local memory rather than requiring repeated high-power accesses to global memory.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If software is used to perform the mapping process from virtual GEMM space to image space, then flexibility is maintained, but power consumption increases due to additional assembly instructions for address calculations and padding checks

Engineering Contradiction:
Improvemapping flexibilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent replaces the software-based mapping mechanism with hardware-based address generation logic. Instead of executing software instructions for address calculation and padding checks, dedicated hardware circuits perform these functions directly, eliminating the power consumption associated with software instruction execution while preserving mapping flexibility through configurable hardware parameters.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11657119B2Hardware accelerated convolution
Publication Date: 2023.05.23 ADVANCED MICRO DEVICES INC
  • US11657119B2 patent drawing
  • US11657119B2 patent drawing
  • US11657119B2 patent drawing

AI summary

A processing device is provided which includes memory configured to store data and a processor configured to determine, based on convolutional parameters associated with an image, a virtual general matrix-matrix multiplication (GEMM) space of a virtual GEMM space output matrix and generate, in the virtual GEMM space output matrix, a convolution result by matrix multiplying the data corresponding to a virtual GEMM space input matrix with the data corresponding to a virtual GEMM space filter matrix. The processing device also includes convolutional mapping hardware configured to map, based on the convolutional parameters, positions of the virtual GEMM space input matrix to positions of an image space of the image.