AI Model Partitioning for Embedded Memory Constraints

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Deep learning models face challenges in embedded environments due to limited memory size, making it difficult to effectively load large models, and existing technologies lack efficient optimization techniques for such constrained environments.

Innovation Solution

A loading optimization method that partitions deep learning models into multiple blocks using reinforcement learning-based techniques, specifically employing the DDPG algorithm to determine optimal partition scenarios that satisfy memory constraints and minimize computational requirements, allowing for efficient loading and execution in embedded devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If deep learning models are loaded in embedded environments, then model execution capability is improved, but memory constraints cause loading failures

Engineering Contradiction:
Improvemodel execution capabilityVSAvoidmemory size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent divides a large deep learning model into multiple smaller blocks based on memory constraints. Each block can be independently loaded and executed, allowing the system to run models that would otherwise exceed available memory. The segmentation is performed by analyzing the model structure and creating partition points that respect both computational dependencies and memory limitations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary analysis of the deep learning model structure before execution, identifying optimal partition points and calculating memory requirements for each block. This advance preparation enables the system to plan the loading sequence and allocate memory efficiently, ensuring that model execution can proceed within embedded memory constraints.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If model partitioning is performed to fit memory constraints, then memory utilization is improved, but computational requirements increase

Engineering Contradiction:
Improvememory utilizationVSAvoidcomputational requirements
Core Design Contradiction:
Quantity of substanceVSPower

Solution Approach 1:

The system changes the parameter of model representation by transforming a single large model into multiple smaller blocks with different memory footprints. This parameter change allows the model to fit within embedded memory constraints while maintaining computational functionality. The partitioning strategy optimizes the balance between block size and computational overhead.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If reinforcement learning optimization is applied to model loading, then loading efficiency is improved, but system complexity increases

Engineering Contradiction:
Improveloading efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent employs a reinforcement learning agent that uses feedback from memory usage and execution performance to optimize model block loading decisions. The agent learns from past loading experiences and adjusts its strategy to improve loading efficiency while adapting to specific embedded environment constraints. This feedback mechanism enables dynamic optimization without requiring complex manual configuration.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20240330683A1Apparatus and method for optimizing artificial intelligence model loading in embedded environment
Publication Date: 2024.10.03 DEEP ET
  • US20240330683A1 patent drawing
  • US20240330683A1 patent drawing
  • US20240330683A1 patent drawing

AI summary

The invention discloses a loading optimization device and method for artificial intelligence models in an embedded environment. According to an embodiment of the present invention, the loading optimization method for artificial intelligence models in an embedded environment includes steps such as acquiring model information for the target model based on artificial intelligence, defining multiple partition scenarios for splitting the target model into multiple blocks based on the model information, and considering memory information of a computing device for executing the target model and computational workload information associated with the target model to explore the optimal scenario among the multiple partition scenarios through a reinforcement learning-based loading optimization model.