AI Algorithm Operation Accelerator for Edge Computing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing AI algorithms for edge computing, such as MobileNet, face challenges in reducing power consumption and improving operation efficiency due to repeated data read and write operations from memory, which hinders the processing of complex AI models on low-level devices like smartphones.
Innovation Solution
An AI algorithm operation accelerator that utilizes a memory unit with separate regions for input, weight, and output data, along with register regions and operators to perform operations in a staged manner, allowing for concurrent processing and reducing the need for repeated memory access, thereby optimizing data processing and reducing power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Use of energy by moving object
If data is read from memory unit for each operation in prior convolution operations, then operation can be performed, but power consumption increases due to repeated data read and write operations
Solution Approach 1:
The patent segments the convolution operation into multiple stages (first convolution operation, second convolution operation, third convolution operation) with different data amounts. This allows the system to process data in batches and reuse loaded data across multiple operations, reducing repeated memory access and lowering power consumption while maintaining operation efficiency.
Solution Approach 2:
The patent loads data into the operator in advance before the actual convolution operations are performed. By pre-loading input data and weight data into the operator's memory, the system performs multiple convolution operations using the same loaded data without repeated memory access, thereby reducing power consumption while maintaining high operation efficiency.
2Productivity
If convolution operations are divided into multiple stages with different operation amounts, then high efficient convolution is achieved, but utility rate of the same operator deteriorates due to different operation amounts in different stages
Solution Approach 1:
The patent changes the parameter of data amount processed in each convolution operation stage. The first convolution operation processes a first data amount, the second processes a second data amount, and the third processes a third data amount. This parameter variation allows the operator to be optimized for different data volumes in different stages, improving overall operation efficiency while maintaining high utility rate through targeted optimization.
3Measurement precision
If complex AI models are processed on low-level devices, then AI accuracy is improved, but operation amount increases making it impractical for devices like smartphones
Solution Approach 1:
The patent segments complex convolution operations into multiple simpler stages (first, second, and third convolution operations) with different data amounts. This segmentation reduces the computational complexity of each individual operation, making complex AI models feasible for low-level devices like smartphones while maintaining overall AI accuracy through the coordinated execution of multiple stages.
Solution Approach 2:
The patent performs preliminary data loading and preparation before executing the main convolution operations. By pre-loading data into the operator and preparing computation batches in advance, the system reduces the real-time computational burden on low-level devices, enabling them to handle complex AI models with acceptable performance and accuracy.
Data Source
AI summary
The application provides an AI algorithm operation accelerator and method, a computing system, and a non-transitory computer readable media. The AI algorithm operation accelerating method includes steps of: A. reading an input data and a descriptor from a memory unit, wherein the descriptor includes a weight data; B. performing a first part of the input data and a first part of the weight data by a first operator for generating a first operation result; C. registering the first operation result; D. when the first operation result reaches a predetermined data amount, triggering a second operator to perform the first operation result and a second part of the weight data by the second operator for generating a second operation result; and E. writing the second operation result into the memory unit.


