# xmig **Repository Path**: openeuler/xmig ## Basic Information - **Project Name**: xmig - **Description**: Build a heterogeneous integrated XPU migration capability to achieve AI computing power decoupling and seamless migration of training tasks, supporting scenarios such as AI training fault recovery, service scheduling, and resource integration. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 6 - **Created**: 2025-09-22 - **Last Updated**: 2025-12-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: sig-Long ## README #
xMIG (xPU 迁移技术)

## 一  整体介绍: ![alt png](assets/overview.jpg )     xMig 是一个为大规模语言模型训练/推理设计的轻量级、快速且透明的错误恢复框架,采用即时(Just-In-Time)方式进行错误处理。其核心目标是通过高效的机制减少训练过程中的错误恢复开销,同时保持系统的稳定性和性能。
### 核心特点 - 透明性与无周期检查点:Mnemosyne 继承了微软即时检查点技术的优势,无需周期性保存检查点,从而降低了训练过程中的性能开销; - 定制化错误恢复机制:通过优化的恢复流程,最大限度地减少日常训练中的额外开销; - 支持运行时调整通信组:提供灵活的集合通信CC组调整功能,适应动态训练需求; ### 技术实现 - 设备代理进行故障监控和故障拦截 xPU 相关的错误会通过API进行钩子捕获,检测到错误后,设备代理停止向上层框架继续传播错误,进入故障恢复状态; - 故障恢复工作流 对于可重启恢复的软件/驱动错误,进行原地恢复,重启故障节点并进行日志重放、CCL 重建、DP 参数拉取;对于不可恢复的错误(如硬件故障),使用CRIU保存CPU进程状态,迁移CPU状态到新节点,随后恢复GPU状态恢复时,使用 Flexible CCL 加速集合通信重建; - 恢复完成后,设备代理正确响应上层框架;
## 二  安装教程: 1. 编译 xmig ```bash $ make ``` 2. 启动 proxy,通过`LD_PRELOAD`实现对API的拦截处理,记录API请求等 ```bash $ cd xmig/GPU/test $ LD_PRELOAD=../target/release/libxgpu_proxy.so python train.py ``` proxy 端等待 server 连接, 并拦截 CUDA API 调用请求并转发到 Server 3. 启动 server, 接收proxy的API调用请求,执行API,返回执行结果 ```bash # 终端 B $ cd xmig/GPU $ ./target/release/xgpu-server `pidof python3` ``` 4. 重放 API 模拟 在执行完一定数量的 API 后, proxy 端触发重放逻辑, 此时会冻结约 10 秒用于手动重启 server ```bash # 终端 B ctrl + c $ ./target/release/xgpu-server `pidof python3` ``` server 重启后, proxy 会自动继续训练流程
## 三  使用场景:     适用于需要高效错误恢复的大规模分布式训练任务,尤其是在训练大规模语言模型时,能够显著减少因错误导致的时间和资源浪费: - 原地恢复:通过集合通信修复,原地就行修复; - 容器迁移:通过CRIU进行容器迁移,进行容器迁移修复;
## 四  参考链接: 1. [Mnemosyne: Lightweight and Fast Error Recovery for LLM Training in a Just-In-Time Manner](https://zhangmenghao.github.io/papers/APNet2025-Mnemosyne.pdf) 2. [PhoenixOS: Concurrent OS-level GPU Checkpoint and Restore with Validated Speculation](https://arxiv.org/pdf/2405.12079) 3. [Just-In-Time Checkpointing: Low Cost Error Recovery from Deep Learning Training Failures](https://dl.acm.org/doi/pdf/10.1145/3627703.3650085) 4. [Singularity: Planet-Scale, Preemptive and Elastic Scheduling of AI Workloads](https://arxiv.org/pdf/2202.07848)