Neural Network Processing Control via Graphics Processor Shader Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing neural network processing systems face inefficiencies as dedicated neural network processors may not support all necessary operations, leading to the need for breaking down tasks between hardware accelerators and graphics processors, which can be cumbersome and inefficient.

Innovation Solution

A control unit within the neural network processor can directly trigger shader program execution on a graphics processor for operations not supported by the neural network processor, allowing for more efficient distribution of processing tasks without the need for extensive command breakdowns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a dedicated neural network processor is used for specific operations, then processing efficiency is improved, but the processor cannot handle operations that are not supported by its fixed-function hardware

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidoperation support coverage
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system enables the neural network processor to handle both its native fixed-function operations and additional unsupported operations by dynamically invoking shader programs on a graphics processor when needed, making the processing system universal and adaptable to various operation types without sacrificing the efficiency benefits of dedicated hardware

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

2Adaptability or versatility

If tasks are broken down between neural network processor and graphics processor, then unsupported operations can be handled, but the complexity of task distribution increases

Engineering Contradiction:
Improveoperation support coverageVSAvoidtask distribution complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The neural network processor automatically determines when shader program execution is needed and triggers it without external intervention, eliminating the need for complex external task breakdown logic and reducing overall system complexity while maintaining versatility

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If extensive command breakdowns are used to distribute tasks, then all operations can be performed, but processing efficiency is reduced

Engineering Contradiction:
Improveoperation support coverageVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system segments operations into two categories: those handled by the efficient fixed-function neural network hardware and those requiring shader program execution, allowing each type to be processed through its most appropriate pathway without unnecessary breakdown and recollection overhead

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240249127A1Neural network processing
Publication Date: 2024.07.25 ARM LTD
  • US20240249127A1 patent drawing
  • US20240249127A1 patent drawing
  • US20240249127A1 patent drawing

AI summary

A data processing system comprising a processor (306) that is configured to perform neural network processing having one or more execution units (213, 214) configured to perform processing operations for neural network processing and a control circuit (217) configured to distribute processing tasks to the execution unit or units, and a graphics processor (304) comprising a programmable execution unit (203) operable to execute processing programs to perform processing operations. The control circuit (217) of the processor (306) that is configured to perform neural network processing is configured to, in response to an indication of particular neural network processing to be performed provided to the control circuit, cause the programmable execution unit (203) of the graphics processor to execute a program to perform the indicated neural network processing.