Adaptive Matrix Multiplier for Deep Learning Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Machine learning applications, particularly deep neural networks, face significant performance bottlenecks due to the high computational requirements of matrix multiplications, which often dominate the running time of these systems.

Innovation Solution

An adaptive matrix multiplier system is designed, comprising multiple multiplying units, memory load circuits, and buffer circuits that enable efficient matrix multiplication by loading data in burst mode and utilizing adder circuits to form and sum products, with the ability to handle various multiplication scenarios such as matrix-matrix, matrix-transpose, and matrix-vector products, and adaptable configurations for optimal performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional matrix multiplication methods are used, then computational accuracy is maintained, but processing time becomes excessively long due to sequential operations

Engineering Contradiction:
Improvematrix multiplication speedVSAvoidcomputational latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The matrix multiplication task is divided into multiple independent multiplying units, each handling specific element computations simultaneously. This segmentation enables parallel processing of matrix elements, transforming sequential operations into concurrent operations that complete much faster while maintaining computational accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an outer buffer circuit that operates at a higher organizational level, coordinating multiple multiplying units and managing data flow between memory and computation units. This dimensional addition of coordination layers enables efficient resource utilization and reduces latency by optimizing the overall computational architecture.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple multiplying units are added to improve performance, then computational speed increases, but device complexity increases

Engineering Contradiction:
Improvematrix multiplication throughputVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each multiplying unit is designed as a universal module that can perform multiple functions: computing dot products, accumulating results, and interacting with the outer buffer circuit. This multi-functionality reduces the need for specialized dedicated circuits for each operation, thereby managing complexity while maintaining high throughput.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The outer buffer circuit serves as an intermediary between memory and the multiple multiplying units, coordinating data access and computation. This intermediary layer simplifies the overall architecture by centralizing control logic and data management, making the system more manageable despite having multiple parallel computing units.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If data is loaded sequentially from memory, then memory access simplicity is maintained, but computational efficiency decreases due to data bottlenecks

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidmemory access time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The memory load circuit performs preliminary actions by loading data into the outer buffer circuit before the multiplying units need it. This advance data preparation ensures that computation units receive data efficiently without waiting for sequential memory access, thereby reducing computational latency and improving overall processing efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous useful action by keeping the outer buffer circuit and multiplying units continuously engaged in computation. The memory load circuit continuously supplies data to the buffer, ensuring no computational cycles are wasted waiting for data, thus maximizing productivity while minimizing memory access bottlenecks.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12153646B2Adaptive matrix multiplication accelerator for machine learning and deep learning applications
Publication Date: 2024.11.26 SAMSUNG ELECTRONICS CO LTD
  • US12153646B2 patent drawing
  • US12153646B2 patent drawing
  • US12153646B2 patent drawing

AI summary

An adaptive matrix multiplier. In some embodiments, the matrix multiplier includes a first multiplying unit a second multiplying unit, a memory load circuit, and an outer buffer circuit. The first multiplying unit includes a first inner buffer circuit and a second inner buffer circuit, and the second multiplying unit includes a first inner buffer circuit and a second inner buffer circuit. The memory load circuit is configured to load data from memory, in a single burst of a burst memory access mode, into the first inner buffer circuit of the first multiplying unit; and into the first inner buffer circuit of the second multiplying unit.