Local ANN Dataset Memory Management for Efficient Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies, including CPUs and GPUs, face inefficiencies in processing artificial neural networks (ANNs) due to high computational loads and power consumption, while Field Programmable Gate Arrays (FPGAs) are challenging to program for ANN computations and lack integration in AI software environments, failing to address the massive data movement requirements of real industrial applications.

Innovation Solution

A system and method for performing multiple locally stored ANN computations using one or more processing units and a memory, where ANN datasets are stored in memory until needed, allowing for sequential or prioritized computations based on input datasets, and utilizing integrated circuits, FPGAs, or computer systems to manage memory efficiently, reducing the number of required processing units and improving data reuse.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If CPUs are used to process ANNs, then programming effort is minimized, but computing power is insufficient

Engineering Contradiction:
Improveprogramming effortVSAvoidcomputing power
Core Design Contradiction:
Ease of operationVSPower

Solution Approach 1:

The patent introduces a memory management system that acts as an intermediary between the CPU and multiple ANN datasets. The system loads ANN datasets into memory and manages their storage and retrieval, allowing the CPU to process ANNs efficiently without direct management of multiple datasets. This mediator approach enables the CPU to maintain its programming simplicity while gaining access to enhanced computing capabilities through efficient memory management of multiple ANNs.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If GPUs are used to process ANNs, then throughput capacity is improved, but power consumption increases excessively

Engineering Contradiction:
Improvethroughput capacityVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements a memory management system that loads only the necessary ANN datasets into memory based on computation requirements. Instead of loading all possible ANN datasets simultaneously (excessive action), the system selectively loads only those ANNs that are currently needed for processing (partial action). This approach provides improved throughput capacity by having multiple ANNs readily available in memory while avoiding excessive power consumption by not maintaining all datasets in high-speed memory at once.

Inventive Principle:
Principle #16Partial or excessive action

3Power

If FPGAs are used to compute ANNs, then parallel computing capability is enhanced, but programming complexity increases significantly

Engineering Contradiction:
Improveparallel computing capabilityVSAvoidprogramming complexity
Core Design Contradiction:
PowerVSDevice complexity

Solution Approach 1:

The patent introduces a memory management system that serves as an intermediary layer between the complex FPGA hardware and the ANN computation tasks. The system manages the loading, storage, and retrieval of ANN datasets in memory, shielding the complexity of FPGA programming from the user. This allows FPGAs to provide enhanced parallel computing capability while the memory management system handles the complexity of data organization and access, reducing the perceived programming complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If multiple ANN datasets are stored in memory, then data reuse is improved, but memory management complexity increases

Engineering Contradiction:
Improvedata reuseVSAvoidmemory management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a memory management system that automatically manages multiple ANN datasets through self-service mechanisms. The system autonomously loads ANN datasets into memory when needed, manages their storage, and retrieves them for processing without requiring manual intervention. This automatic self-management improves data reuse by keeping multiple ANNs readily available in memory while reducing memory management complexity by eliminating the need for manual tracking and management of multiple datasets.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS20210117800A1Multiple locally stored artificial neural network computations
Publication Date: 2021.04.22 XILINX INC
  • US20210117800A1 patent drawing
  • US20210117800A1 patent drawing
  • US20210117800A1 patent drawing

AI summary

Systems and methods for performing multiple locally stored artificial neural network (ANN) computations are provided. An example method comprises receiving, by one or more processing units, an ANN dataset associated with at least one ANN of a plurality of ANNs; storing, by processing units, the ANN dataset in a memory coupled to the processing units; associating, by the processing units, a base address with the at least one ANN, wherein the base address is to be used to locate the ANN dataset in the memory; keeping, by the processing units, the ANN dataset in the memory; receiving, by the processing units, an input dataset and the base address; determining, by the processing units and based on the base address, a location of the ANN dataset in the memory; and performing, by the processing units, ANN computation using the ANN dataset and input dataset.