Inference Engine Inline Post Processing for ML Data Bottlenecks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing architectures are not scalable and inefficient for the inference phase of machine learning, particularly due to data movement bottlenecks and high time spent on loading and storing data, which hampers performance and energy efficiency as input data and model sizes grow.

Innovation Solution

A hardware-based programmable architecture with a dedicated inference engine that includes a POD engine for dense matrix computations and a two-dimensional array of processing tiles, capable of performing dense and sparse operations, and utilizing lookup tables for efficient tanh and sigmoid functions, along with piecewise approximations for floating-point operations, to reduce data processing time and improve efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional computing architecture is used for ML inference, then data processing can be performed, but data movement becomes a bottleneck and time spent on loading/storing data increases significantly

Engineering Contradiction:
Improvedata processing throughputVSAvoidtime spent on loading and storing data
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments data processing into compute-intensive operations (performed on processing elements) and memory operations (performed on memory elements). By separating these functions, the architecture reduces unnecessary data movement while maintaining processing capability, directly addressing the time loss problem.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces intermediary memory structures (such as on-chip buffers and caches) between data sources and processing units. These intermediaries reduce the frequency and volume of data transfers to main memory, thereby reducing the bottleneck effect while improving overall processing throughput.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If input data and model sizes grow, then ML inference capability increases, but data movement bottleneck worsens and current computing architecture becomes less scalable

Engineering Contradiction:
ImproveML inference capabilityVSAvoidcomputing architecture scalability
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The architecture introduces a hierarchical memory dimension with multiple storage levels (registers, on-chip memory, off-chip memory) organized by access frequency and capacity. This dimensional organization allows efficient handling of growing data sizes by keeping frequently accessed data in faster, smaller memory structures while maintaining access to larger datasets in slower memory.

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

Solution Approach 2:

The system dynamically adapts its memory hierarchy and data movement patterns based on the size and characteristics of input data and models. Processing elements can dynamically allocate memory resources and adjust data loading strategies, enabling the architecture to scale with growing ML workloads without fixed structural limitations.

Inventive Principle:
Principle #15Dynamics

3Productivity

If three operations (load, processing, store) are performed for each data element, then data can be processed, but the operations become burdensome as data amount grows

Engineering Contradiction:
Improvedata processing efficiencyVSAvoidnumber of operations per data element
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple operations into more efficient sequences. By combining data loading with processing operations and using in-place computations where possible, the system reduces the total number of discrete operations needed per data element, making the processing burden manageable even for large datasets.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11995569B2Architecture to support tanh and sigmoid operations for inference acceleration in machine learning
Publication Date: 2024.05.28 MARVELL ASIA PTE LTD
  • US11995569B2 patent drawing
  • US11995569B2 patent drawing
  • US11995569B2 patent drawing

AI summary

A processing unit to support inference acceleration for machine learning (ML) comprises an inline post processing unit configured to accept and maintain one or more lookup tables for performing a tanh and/or sigmoid operation/function. The inline post processing unit is further configured to accept data from a set of registers configured to maintain output from a processing block instead of streaming the data from an on-chip memory (OCM), perform the tanh and/or sigmoid operation on each element of the data from the processing block on a per-element basis via the one or more lookup tables, and stream post processing result of the per-element tanh and/or sigmoid operation back to the OCM after the tanh and/or sigmoid operation is complete.