Weighted CPU AI Execution via Sparse Matrix Simplification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current AI technologies require high-end hardware for computations due to inefficient matrix optimization, leading to increased costs and cooling issues, and are unable to effectively distribute procedures across CPU threads, limiting the use of low-end hardware for AI development and applications.

Innovation Solution

A method that simplifies sparse matrices used by AI models through a matrix simplification procedure and applies transformed instructions to a weighted CPU, allowing it to distribute procedures across multiple threads based on weighting values, optimizing execution time and reducing computation resources needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If high-end hardware (high-end CPUs or GPUs) is used to execute AI computations, then computation speed and processing capability are improved, but hardware cost and cooling requirements increase

Engineering Contradiction:
Improvecomputation speedVSAvoidhardware cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent transforms the instruction set to enable the CPU to execute AI computation instructions natively, changing the execution parameter from sequential single-thread mode to parallel multi-thread mode. This allows low-end CPUs to achieve AI computation capabilities previously requiring high-end hardware, reducing hardware cost while maintaining computation speed

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent segments AI computation procedures into multiple independent threads that can be executed in parallel by multiple CPU cores. By dividing the computation workload across multiple threads with different weighting values, the system achieves high computation speed on low-end hardware without requiring expensive high-end CPUs or GPUs

Inventive Principle:
Principle #1Segmentation

2Ease of operation

If the CPU executes procedures in received order without optimization, then execution simplicity is maintained, but execution time increases and low-end hardware cannot complete computations efficiently

Engineering Contradiction:
Improveexecution simplicityVSAvoidexecution time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent dynamically adjusts the execution order of procedures by assigning different weighting values to different threads. The CPU scheduler uses these weighting values to determine execution priority and timing, allowing the system to optimize execution time adaptively while maintaining ease of operation through automatic scheduling without manual intervention

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent performs preliminary transformation of the instruction set before execution, encoding threading and weighting information in advance. This preliminary action allows the CPU to execute procedures in optimized parallel order without requiring complex real-time scheduling decisions during execution, reducing execution time while maintaining simplicity

Inventive Principle:
Principle #10Preliminary action

3Productivity

If SWAP operations are performed frequently to hand over procedures between threads, then procedure completion is achieved, but execution speed reduces due to additional time required

Engineering Contradiction:
Improveprocedure completionVSAvoidexecution speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent merges multiple procedure execution streams into a unified thread execution model where procedures are distributed to threads based on weighting values. This merging eliminates the need for frequent SWAP operations between threads, as procedures are assigned to appropriate threads in advance and executed continuously, maintaining both procedure completion and high execution speed

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11847504B2Method for CPU to execute artificial intelligence related processes
Publication Date: 2023.12.19 NEXCOM INTERNATIONAL CO LTD
  • US11847504B2 patent drawing
  • US11847504B2 patent drawing
  • US11847504B2 patent drawing

AI summary

A method for a CPU to execute artificial intelligence related processes is disclosed. The method includes: when executing TensorFlow on an electronic device, calling a corresponding AI model of TensorFlow according to content of program codes; determining and obtaining one or multiple sparse matrixes used by the AI model in performing calculations; executing a matrix simplifying procedure to the one or multiple sparse matrixes; executing an instruction transforming procedure to an instruction set applied for the AI model; issuing an instruction to a weighted CPU of the electronic device by the AI model according to transformed instruction set; and the weighted CPU, after receiving the instruction, averagely distributing multiple procedures indicated by the AI model to each of multiple threads of the weighted CPU to be respectively executed according to a weighting value of each of the multiple procedures.