Adaptive LLM Memory Management with Chunk Swapping and Checkpointing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing large language model (LLM) training frameworks face challenges with memory bottlenecks due to increasing parameter sizes, leading to inefficient memory management and manual configuration requirements, which result in out-of-memory errors and suboptimal training throughput.

Innovation Solution

ProTrain employs an adaptive memory management system that intelligently manages memory and computation by using chunk-based model state and block-wise activation management, along with a memory-aware runtime profiler to optimize memory usage without manual intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If parameter size of LLMs is increased to improve performance, then model performance is improved, but memory demand increases substantially

Engineering Contradiction:
Improvemodel performanceVSAvoidmemory demand
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments model parameters into chunks and organizes them in a hierarchical structure with different storage locations (GPU memory, CPU memory, disk). This allows the system to manage large parameter sets by dividing them into manageable portions that can be selectively loaded and processed, resolving the contradiction between maintaining large parameter sizes for performance and managing memory demand.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extends memory management from a single-dimension (GPU memory only) to a multi-dimensional hierarchy involving GPU memory, CPU memory, and disk storage. This dimensional expansion allows the system to accommodate larger parameter sets by utilizing multiple memory domains with different capacities and access characteristics.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Quantity of substance

If memory management is manually configured to handle large models, then memory usage can be controlled, but device complexity and operational difficulty increase

Engineering Contradiction:
Improvememory usage controlVSAvoidconfiguration complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements an adaptive memory management system that automatically monitors memory usage and dynamically adjusts chunk sizes, storage locations, and data transfer operations without manual intervention. The system self-regulates based on real-time memory conditions, eliminating the need for complex manual configuration while maintaining effective memory control.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system incorporates feedback mechanisms that continuously monitor memory usage patterns and adapt chunk management strategies accordingly. This feedback loop enables automatic optimization of memory allocation and transfer operations, reducing configuration complexity while maintaining precise memory usage control.

Inventive Principle:
Principle #23Feedback

3Ease of manufacture

If existing memory management frameworks are used for large models, then implementation is straightforward, but training throughput is suboptimal due to memory bottlenecks

Engineering Contradiction:
Improveimplementation easeVSAvoidtraining throughput
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent employs dynamic chunk management where the system automatically adjusts chunk sizes, loading thresholds, and data transfer timing based on real-time memory availability and computation needs. This dynamic adaptation optimizes the balance between implementation simplicity and training throughput by automatically responding to changing system conditions.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary actions by pre-loading model chunks into appropriate memory locations based on predicted training needs and by preparing data transfers in advance. This proactive approach reduces runtime memory bottlenecks and improves training throughput while maintaining ease of implementation through automated chunk management.

Inventive Principle:
Principle #10Preliminary action

4Speed

If more model states are stored in GPU memory to reduce data transfer, then computation speed is improved, but memory capacity requirements increase

Engineering Contradiction:
Improvecomputation speedVSAvoidmemory capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies partial action by loading only the necessary model chunks into GPU memory based on the current training batch requirements and accessibility thresholds. This selective loading strategy maintains high computation speed for active parameters while avoiding the excessive memory capacity requirements that would result from loading the entire model into GPU memory.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20260065411A1Adaptive memory management system for efficient training of large language models
Publication Date: 2026.03.05 UNIV OF MASSACHUSETTS
  • US20260065411A1 patent drawing
  • US20260065411A1 patent drawing
  • US20260065411A1 patent drawing

AI summary

Various examples are provided related to adaptive memory management. In one example, a method includes determining a chunk size for organizing parameters, the chunk size determined based on execution order of parameters and selected to reduce memory waste; determining a swapping interval including one activation swapping block followed by an integer number of gradient checkpointing blocks, the swapping interval determined by dividing a time required to swap one transformer block by a computation time of the one transformer block; determining a number of persistent chunks and non-persistent chunks to offload model states from GPUs; determining a number of chunk buffers on the GPUs for prefetching and reusing the model states; determining a number of activation swapping blocks to offload activations from the GPUs; determining a number of transformer blocks to apply gradient checkpointing; and initiating a forward computation pass based upon the configurations. A backward computation pass can be performed.