godweiyang/GrabGPU

一款便捷的抢占显卡脚本

它解决了什么问题

这个项目提供了一个脚本,用于占用GPU内存和计算资源,模拟GPU使用情况,防止其他用户或自动化系统回收GPU(通常称为“抢占”或“抢占式释放”GPU)。

工作原理

该工具使用CUDA C++和Tensor Cores(WMMA 16x16x16 FP16)创建一个工作负载,消耗指定数量的VRAM并维持目标GPU利用率。它会自动校准内核迭代时间,使其稳定在约50ms,确保监控工具如 nvidia-smi 和 DCGM 报告一致的指标。当请求的利用率低于100%时,脚本会管理一个占空比(在工作和休眠之间交替),以准确达到目标百分比。

适用人群

在共享GPU集群中工作的开发人员和研究人员,这些集群的资源管理系统可能会自动回收空闲GPU。

特色亮点

  • 高保真模拟:模拟SM活动、SM利用率和Tensor Core活动,使使用情况看起来真实可信。
  • 可自定义参数:允许用户指定确切的VRAM数量(GB)、占用时长、特定GPU ID和目标利用率。
  • 自动校准:动态调整内核迭代次数,无论GPU架构如何,都能保持指标稳定。
  • 集成能力:在成功占用GPU资源后,可触发自定义shell脚本(例如模型训练脚本)。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目