Neural Network Processing Unit With Kernel Dependency Scheduling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Interactions between a central processing unit (CPU) and other processing units during neural network processing cause performance degradation and increased power consumption in electronic devices.
Innovation Solution
A processing unit that generates additional commands based on the type of kernel, allowing a consuming kernel to reference data produced by a producing kernel without direct interaction between the CPU and the processing unit, through a coordinator and command processor.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the CPU interacts with other processing units during neural network processing, then data transfer can be performed, but performance degradation occurs and power consumption increases
Solution Approach 1:
The patent introduces additional commands as intermediaries between the producing kernel and consuming kernel. These commands enable data dependency management and synchronization without requiring direct CPU intervention, thereby reducing CPU-processing unit interactions while maintaining processing speed and reducing power consumption
2Productivity
If the CPU interacts with other processing units during neural network processing, then data transfer can be performed, but performance degradation occurs
Solution Approach 1:
The patent implements preliminary actions by generating additional commands in advance that manage data dependencies and synchronization between kernels. This allows the processing unit to autonomously coordinate data transfer and execution without waiting for CPU instructions, reducing processing time and improving performance
3Loss of energy
If additional commands are generated based on kernel type, then interactions between CPU and processing units are reduced, but device complexity increases
Solution Approach 1:
The patent applies local quality by generating different additional commands based on the specific type of kernel (producing or consuming). This targeted approach reduces CPU interactions only where needed while maintaining simple command processing for other cases, thereby reducing power consumption without significantly increasing overall device complexity
Data Source
AI summary
A processing unit for processing a neural network includes a coordinator configured to receive a kernel command from a host processor, determine a type of kernel corresponding to the kernel command, and generate an additional command different according to the type of kernel, the kernel command being used to execute kernels required to process the neural network, and a command processor configured to schedule such that the data produced by the producing kernel is referred to when the consuming kernel is executed based on the kernel command and the additional command.


