GPU压力测试工具----gpu_burn的使用

背景:

        我们平时想做gpu的压力测试,需要一个简单的可以一键执行的工具来测试,主要要来打满gpu的使用率和显存,这里以8卡4090机器为测试机,驱动版本550.54.14,cuda版本12.3。

开源方案:

gpu-burn一个开源的cuda测试工具,一个专门用来给 NVIDIA GPU 施加压力的工具。

前提:

        测试的服务器有安装好的cuda和gpu驱动。

测试方法:

(1)虚拟机或逻金属服务器进行GPU压力测试

# 方式1:克隆仓库
git clone https://github.com/wilicc/gpu-burn.git

# 方式2:如果git下载不下来,推荐使用wget下载zip包并解压缩
wget https://github.com/wilicc/gpu-burn/archive/refs/heads/master.zip  
unzip master.zip  
mv gpu-burn-master gpu-burn


# 进入目录
cd gpu-burn

# 编译
make

# 备注:编译不通过具体原因具体分析,大部分原因是找不到cuda等库文件,可以通过指定库文件方式来编译,以下是一个示例:
make CXXFLAGS="-I/usr/local/cuda-12.3/include" \
     CUDA_HOME=/usr/local/cuda-12.3 \
     NVCCFLAGS="-I/usr/local/cuda-12.3/include" \
     NVCC=/usr/local/cuda-12.3/bin/nvcc \
     LDFLAGS="-L/usr/local/cuda-12.3/lib64 -Wl,-rpath=/usr/local/cuda-12.3/lib64"


# 将 gpu_burn 程序运行在后台,并将输出重定向到 output.log 文件 60代表要压测的时间,可以自由修改,压测的结果会打印在output文件里
./gpu_burn 60 > output.log 2>&1 &

未运行压测前GPU使用概览:

运行之后:

可以看到GPU的利用率和显存基本都被打满

(2)以容器方式进行测试

git clone https://github.com/wilicc/gpu-burn
cd gpu-burn
docker build -t gpu_burn .
docker run --rm --gpus all gpu_burn

这样默认生成的压测docker镜像是60s的压测镜像,gpu_burn项目里本身的dockerfile内容是这样的:

其中CMD的启动命令里‘60’控制的是容器的运行时长,默认为60s,但是实际随着用户压测场景不同,可能需要修改,比如12h,24h

这里以12h的压测镜像为例:

将时间改为43200s,也就是12h

也可以推送到镜像仓库作为以后的公共镜像来经常使用:

docker tag gpu_burn:latest harbor-pro.wd.net/model_library/gpu_burn_12h:latest
docker push harbor-pro.wd.net/model_library/gpu_burn_12h:latest

# 镜像拉取:
docker pull docker pull harbor-pro.wd.net/model_library/gpu_burn_12h:latest

# 镜像运行(进行12h的gpu压测):
docker run --rm --gpus all harbor-pro.wd.net/model_library/gpu_burn_12h:latest

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值