環境
- Ubuntu
- Docker
やりたいこと
GPUの負荷テストを行うためには、CPUやディスクの負荷テストで使われるstress
コマンドとは異なり、GPU専用のツールが必要になる。
そこで見つけたのがgpu-burn
というツールだ。gpu-burn
は、NVIDIAのGPUに対して特化した負荷テスト用ライブラリで、CUDAを利用してGPU資源をフルに活用する。
gpu-burnの特徴
- マルチ-GPU対応: 複数のGPUで同時に負荷テストを実施可能。
- シンプルな使用感: Dockerコンテナを使うことで、簡単に環境構築ができる。
- 高いダイナミックレンジ: さまざまなGPUモデルに対して効率的に動作するよう設計されている。
これらの特徴から、GPUの性能を最大限に引き出すためのツールとして非常に有用だ。負荷テストに特化した設計が成されており、特にCUDAを用いた計算に最適化されているため、科学計算や機械学習の処理能力を検証したい方に最適だ。これからgpu-burn
のインストールと実行方法について詳しく説明する。
インストール
wilicc/gpu-burn: Multi-GPU CUDA stress test
Dockerでの仕様が推奨されている。事前にNvidiaのドライバーがインストールされていてDockerコンテナからGPUが見れるようにしておく。
git clone https://github.com/wilicc/gpu-burn cd gpu-burn docker build -t -- .
実行
docker run --rm --init --gpus all gpu_burn
以下のように出力しつつ、全力でGPUを消費する。
$ docker run --rm --init --gpus all gpu_burn ========== == CUDA == ========== CUDA Version 11.8.0 Container image Copyright (c) 2016-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. This container image and its contents are governed by the NVIDIA Deep Learning Container License. By pulling and using the container, you accept the terms and conditions of this license: https://developer.nvidia.com/ngc/nvidia-deep-learning-container-license A copy of this license is made available in this container at /NGC-DL-CONTAINER-LICENSE for your convenience. GPU 0: NVIDIA GeForce RTX 3060 (UUID: GPU-8d286a01-6472-8816-acae-30e0e2d131f6) GPU 1: NVIDIA GeForce RTX 4080 (UUID: GPU-9e89c544-03e0-af89-8bce-00eec4a2add2) Using compare file: compare.ptx Burning for 60 seconds. 10.0% proc'd: 200 (34547 Gflop/s) - 39 (9144 Gflop/s) errors: 0 - 0 temps: 73 C - 69 C
停止する際はCtrl+CでOK