GPU fryer:项目的核心功能/场景
gpu-fryer Where GPUs get cooked 👩🍳🔥 项目地址: https://gitcode.com/gh_mirrors/gp/gpu-fryer
GPU fryer 是一款专业的 GPU 压力测试工具,用于检测 GPU 的异常热节流或性能降级问题。
项目介绍
GPU fryer 主要用于对运行机器学习推理或训练工作负载的 GPU 进行测试。在这种场景下,系统的性能往往由最慢的 GPU 决定。GPU fryer 通过创建矩阵并进行矩阵乘法运算来对 GPU 进行压力测试,能够检测 GPU 的性能下降或热节流情况。
在 Hugging Face,GPU fryer 被用于监控高性能计算集群,确保所有 GPU 都能以峰值性能运行。
项目技术分析
GPU fryer 依赖于 NVIDIA 的 CUDA 工具包来执行压力测试。它使用 CUBLAS 进行矩阵乘法运算,并分配 95% 的 GPU 内存以环形缓冲区方式写入结果。如果 GPU 支持 BF16 精度,GPU fryer 将使用 BF16 而不是 FP32 来压力测试 Tensor Cores。
在非默认安装的情况下,GPU fryer 使用 NVML 监控 GPU 的温度和节流情况。用户可以通过 --nvml-lib-path
参数指定 libnvidia-ml.so
的路径。
GPU fryer 检查系统中所有 GPU 的性能是否均匀,并报告任何性能下降或热节流问题。目前没有绝对的性能指标,以下是一些参考值:
| GPU | TFLOPS | 精度 | |-----------------------|--------|---------| | NVIDIA H100 80GB HBM3 | ~51 | FP32 | | NVIDIA H100 80GB HBM3 | ~676 | BF16 |
项目及技术应用场景
GPU fryer 的主要应用场景是在 GPU 集群中,尤其是在机器学习和深度学习工作负载下,确保所有 GPU 都能在最佳状态下工作。它对于发现性能瓶颈和热节流问题非常有用,可以帮助用户及时调整系统配置和散热方案。
使用 Docker 启动 GPU fryer 非常简单:
docker run --gpus all ghcr.io/huggingface/gpu-fryer:1.0.0 60
命令行使用示例如下:
$ gpu-fryer 60 # 运行 60 秒的测试
...
GPU #7: 51494 Gflops/s (min: 50577.53, max: 51677.05, dev: 51493.79)
温度: 48.83°C (min: 47.00, max: 50.00)
节流 HW: 否, 软件节流: 否, 热节流 HW: 否
所有 GPU 均表现正常
项目特点
-
易于使用:GPU fryer 提供了简洁的命令行界面,用户可以轻松地进行 GPU 压力测试。
-
可定制性:用户可以通过多个参数调整测试的持续时间和精度,以及是否容忍软件节流等。
-
全面监控:GPU fryer 不但检查 GPU 的性能,还监控温度和节流情况,为用户提供全面的系统健康信息。
-
支持多种精度:根据 GPU 的能力,GPU fryer 可以选择使用 FP32 或 BF16 精度进行测试。
-
跨平台兼容:GPU fryer 可以在支持 CUDA 的系统上运行,不受特定操作系统或环境的限制。
通过以上分析,GPU fryer 无疑是 GPU 系统性能监控和优化的有力工具。它不仅可以帮助用户发现潜在的硬件问题,还能确保 GPU 集群在运行关键任务时达到最佳性能。无论是对于研究人员还是工程师,GPU fryer 都是一个不可或缺的工具。
gpu-fryer Where GPUs get cooked 👩🍳🔥 项目地址: https://gitcode.com/gh_mirrors/gp/gpu-fryer
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考