PARALLELGPUOS: A Concurrent OS-level GPU Checkpoint and Restore System using Validated Speculation

Zhuobin Huang, Xingda Wei, Yingyi Hao, Rong Chen, Mingcong Han, Jinyu Gu, Haibo Chen
{"title":"PARALLELGPUOS: A Concurrent OS-level GPU Checkpoint and Restore System using Validated Speculation","authors":"Zhuobin Huang, Xingda Wei, Yingyi Hao, Rong Chen, Mingcong Han, Jinyu Gu, Haibo Chen","doi":"arxiv-2405.12079","DOIUrl":null,"url":null,"abstract":"Checkpointing (C) and restoring (R) are key components for GPU tasks. POS is\nan OS-level GPU C/R system: It can transparently checkpoint or restore\nprocesses that use the GPU, without requiring any cooperation from the\napplication, a key feature required by modern systems like the cloud. Moreover,\nPOS is the first OS-level C/R system that can concurrently execute C/R with the\napplication execution: a critical feature that can be trivially achieved when\nthe processes only running on the CPU, but becomes challenging when the\nprocesses use GPU. The problem is how to ensure consistency during concurrent\nexecution with the lack of application semantics due to transparency. CPU\nprocesses can leverage OS and hardware paging to fix inconsistency without\napplication semantics. Unfortunately, GPU bypasses OS and paging for high\nperformance. POS fills the semantic gap by speculatively extracting buffer\naccess information of GPU kernels during runtime. Thanks to the simple and\nwell-structured nature of GPU kernels, our speculative extraction (with runtime\nvalidation) achieves 100% accuracy on applications from training to inference\nwhose domains span from vision, large language models, and reinforcement\nlearning. Based on the extracted semantics, we systematically overlap C/R with\napplication execution, and achieves orders of magnitude higher performance\nunder various tasks compared with the state-of-the-art OS-level GPU C/R,\nincluding training fault tolerance, live GPU process migration, and cold starts\nacceleration in GPU-based serverless computing.","PeriodicalId":501333,"journal":{"name":"arXiv - CS - Operating Systems","volume":"64 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-05-20","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Operating Systems","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2405.12079","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Checkpointing (C) and restoring (R) are key components for GPU tasks. POS is an OS-level GPU C/R system: It can transparently checkpoint or restore processes that use the GPU, without requiring any cooperation from the application, a key feature required by modern systems like the cloud. Moreover, POS is the first OS-level C/R system that can concurrently execute C/R with the application execution: a critical feature that can be trivially achieved when the processes only running on the CPU, but becomes challenging when the processes use GPU. The problem is how to ensure consistency during concurrent execution with the lack of application semantics due to transparency. CPU processes can leverage OS and hardware paging to fix inconsistency without application semantics. Unfortunately, GPU bypasses OS and paging for high performance. POS fills the semantic gap by speculatively extracting buffer access information of GPU kernels during runtime. Thanks to the simple and well-structured nature of GPU kernels, our speculative extraction (with runtime validation) achieves 100% accuracy on applications from training to inference whose domains span from vision, large language models, and reinforcement learning. Based on the extracted semantics, we systematically overlap C/R with application execution, and achieves orders of magnitude higher performance under various tasks compared with the state-of-the-art OS-level GPU C/R, including training fault tolerance, live GPU process migration, and cold starts acceleration in GPU-based serverless computing.
PARALLELGPUOS:使用验证推测的并行操作系统级 GPU 检查点和还原系统
检查点(C)和恢复(R)是 GPU 任务的关键组成部分。POS 是一个操作系统级的 GPU C/R 系统:它可以透明地检查点或还原使用 GPU 的进程,而不需要应用程序的任何配合,这是云计算等现代系统所需的关键功能。此外,POS 还是首个能与应用程序同时执行 C/R 的操作系统级 C/R 系统:当进程仅在 CPU 上运行时,这一关键功能可以轻松实现,但当进程使用 GPU 时,这一功能就变得非常具有挑战性。问题在于如何在并发执行过程中确保一致性,同时又能避免因透明性而导致的应用语义缺失。CPU 进程可以利用操作系统和硬件分页来解决不应用语义的不一致性问题。遗憾的是,GPU 为获得高性能,绕过了操作系统和分页。POS 通过在运行期间推测性地提取 GPU 内核的缓冲区访问信息,填补了语义空白。得益于GPU内核简单且结构良好的特性,我们的推测性提取(带运行时验证)在从训练到推理的应用中实现了100%的准确率,其应用领域涵盖视觉、大型语言模型和强化学习等。基于提取的语义,我们将C/R与应用执行进行了系统性的重叠,与最先进的操作系统级GPU C/R相比,在各种任务中实现了数量级更高的性能,包括训练容错、实时GPU进程迁移以及基于GPU的无服务器计算中的冷启动加速。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信