Processor Descriptor for Neural Network Data Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As AI algorithms become more complex, the increasing amount of data and data dimensions processed by processors lead to reduced efficiency due to the need for manual parameter setting for data access, which complicates data access operations.

Innovation Solution

A data processing method and apparatus that uses a descriptor to indicate the shape of a tensor, allowing the processor to obtain the corresponding content and execute instructions efficiently, thereby simplifying data access and improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If processors determine data address by obtaining parameters of instructions and reading data according to data address, then data access can be completed, but the complexity of data access increases and processing efficiency decreases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidcomplexity of data access
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces a descriptor as an intermediary data structure that contains pre-calculated data access parameters (such as base addresses, strides, and offsets). Instead of requiring the processor to calculate data addresses from scratch during instruction execution, the descriptor serves as a pre-computed intermediary that provides ready-to-use addressing information, thereby reducing processing complexity and improving efficiency

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent applies preliminary action by pre-calculating and storing data access parameters in the descriptor before the actual data processing occurs. The descriptor contains pre-computed information about data layout, dimensions, and access patterns, which eliminates the need for complex runtime calculations during instruction execution, thus improving processing efficiency

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If manual parameter setting is required for data access when designing instructions, then data access can be performed, but the ease of operation deteriorates

Engineering Contradiction:
Improveease of data accessVSAvoidparameter setting complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent enables self-service by allowing the system to automatically generate and manage data access parameters through the descriptor structure. The descriptor contains all necessary information for data access (addresses, dimensions, strides), eliminating the need for manual parameter setting by programmers. The system autonomously handles the complexity of data access parameter management

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The descriptor acts as an intermediary that abstracts away the complexity of data access parameters from the programmer. Instead of manually setting complex parameters for multi-dimensional data access, programmers simply reference the descriptor, which automatically provides the correct access parameters, thereby improving ease of operation

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3825842B1Data processing method and apparatus, and related product
Publication Date: 2023.09.06 CAMBRICON TECH CO LTD
  • EP3825842B1 patent drawingFigure 1~2
  • EP3825842B1 patent drawingFigure 3
  • EP3825842B1 patent drawingFigure 4

AI summary

The present disclosure provides a data processing method and an apparatus and a related product. The products include a control module including an instruction caching unit, an instruction processing unit, and a storage queue unit. The instruction caching unit is configured to store computation instructions associated with an artificial neural network operation; the instruction processing unit is configured to parse the computation instructions to obtain a plurality of operation instructions; and the storage queue unit is configured to store an instruction queue, where the instruction queue includes a plurality of operation instructions or computation instructions to be executed in the sequence of the queue. By adopting the above-mentioned method, the present disclosure can improve the operation efficiency of related products when performing operations of a neural network model.