Packet Architecture for Neural Network Processing Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current AI processing systems face inefficiencies due to the computational intensity of matrix operations, which are not optimally handled by conventional computer processors, necessitating specialized matrix operation processors but requiring advanced techniques to efficiently compile and execute high-level AI code.

Innovation Solution

A packet architecture for neural network processing that divides tasks into self-contained work packets, allowing for parallel execution and optimized scheduling on Neural Processing Units (NPUs), leveraging data parallelism and hardware utilization to enhance processing efficiency across a broad range of neural network applications.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional computer processors are used for AI matrix operations, then general-purpose computing is maintained, but processing speed and efficiency deteriorate

Engineering Contradiction:
Improvegeneral-purpose computing capabilityVSAvoidmatrix operation processing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent segments the neural network computation into discrete work packets that can be independently processed. Each work packet contains a subset of the computational work, allowing parallel processing across multiple processing elements while maintaining the overall computation graph structure. This segmentation enables specialized matrix operation processors to handle specific computational tasks efficiently without requiring a complete redesign of the general-purpose computing architecture.

Inventive Principle:
Principle #1Segmentation

2Productivity

If specialized matrix operation processors are created, then processing efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvematrix operation processing efficiencyVSAvoidprocessor architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent creates a universal work packet format and execution model that can be processed by multiple types of processing elements. The same work packet infrastructure supports different neural network operations (convolutions, fully connected layers, pooling) and can be executed on various processor architectures including GPUs, FPGAs, and custom NPUs. This universality reduces device complexity by providing a common interface layer between the high-level AI code and diverse hardware implementations.

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

Solution Approach 2:

The work packet structure serves as an intermediary layer between high-level AI programming languages and low-level processor instructions. The compilation system translates AI code into work packets that encapsulate computational tasks, data dependencies, and resource requirements. This intermediary abstraction simplifies the mapping process to various processor architectures and handles the complexity of parallel execution, memory management, and resource allocation automatically.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If high-level AI code is compiled to low-level instructions, then programming ease is maintained, but execution efficiency may deteriorate

Engineering Contradiction:
Improveprogramming simplicityVSAvoidcode execution efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The compilation system performs preliminary analysis and optimization of the AI code before generating executable instructions. During compilation, the system constructs a computation graph, identifies parallel execution opportunities, optimizes data flow, and generates work packets with embedded optimization information. This preliminary action allows the compiler to prepare efficient execution plans without requiring the programmer to manually optimize the code, thus maintaining programming ease while achieving high execution efficiency.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The work packet execution model incorporates feedback mechanisms that provide runtime information about resource utilization, data dependency satisfaction, and execution performance. This feedback is used by the compilation system to optimize future code generation and by the runtime system to dynamically adjust execution strategies. The feedback loop enables the system to learn from actual execution patterns and improve compilation optimizations, bridging the gap between high-level code and efficient execution.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20240152761A1Method and apparatus for using a packet architecture to process neural networks in a neural processing unit
Publication Date: 2024.05.09 EXPEDERA INC
  • US20240152761A1 patent drawing
  • US20240152761A1 patent drawing
  • US20240152761A1 patent drawing

AI summary

Artificial intelligence is an increasingly important sector of the computer industry. However, artificial intelligence is extremely computationally intensive field such that it can be expensive, time consuming, and energy consuming field. Fortunately, many of the calculations required for artificial intelligence can be performed in parallel such that specialized processors can great increase computational performance for AI applications. Specifically, artificial intelligence generally requires large numbers of matrix operations such that specialized matrix processor circuits can greatly improve performance. To efficiently execute all these matrix operations, the matrix processor circuits must be quickly and efficiently supplied with a stream of data and instructions to process or else the matrix processor circuits end up idle. Thus, this document discloses packet architecture for efficiently creating and supplying neural network processors with work packets to process.