猿问

在 Colab 中运行代码时显示 GPU 使用情况

我有一个在 Google Colab 上运行的程序,我需要在运行时监控 GPU 使用情况。我知道通常您会nvidia-smi在命令行中使用来显示 GPU 使用情况,但由于 Colab 一次只允许一个单元同时运行,因此这不是一个选项。目前,我正在使用GPUtil和监视 GPU 和 VRAM 的使用情况GPUtil.getGPUs()[0].loadGPUtil.getGPUs()[0].memoryUsed但我找不到让这些代码片段与我的其余代码同时执行的方法,因此使用数量远低于实际应该的数量是。有没有办法在其他代码运行时打印 GPU 使用情况?



慕工程0101907
浏览 934回答 5
5回答

ABOUTYOU

如果您有 Colab Pro,可以打开终端,位于左侧,用黑色背景表示为“>_”。即使某些单元正在运行,您也可以从那里运行命令编写命令以实时查看 GPU 使用情况:watch nvidia-smi

阿波罗的战车

用于wandb记录系统指标:!pip install wandbimport wandbwandb.init()它输出一个 URL,您可以在其中查看不同系统指标的各种图表。

慕尼黑5688855

更清楚的解释。转到权重和偏差并创建您的帐户。运行以下命令。!pip install wandb import wandb wandb.init()转到笔记本中的链接以获得授权 - 复制 API 密钥。将密钥粘贴到笔记本输入字段中。授权后,您会在笔记本中找到另一个链接 - 在那里查看您的模型 + 系统矩阵。

绝地无双

您可以在后台运行脚本来跟踪 GPU 使用情况。第 1 步:创建一个文件来监控 jupyter 单元中的 GPU 使用情况。%%writefile gpu_usage.sh#! /bin/bash#comment: run for 10 seconds, change it as per your useend=$((SECONDS+10))while [ $SECONDS -lt $end ]; do    nvidia-smi --format=csv --query-gpu=power.draw,utilization.gpu,memory.used,memory.free,fan.speed,temperature.gpu >> gpu.log    #comment: or use below command and comment above using #    #nvidia-smi dmon -i 0 -s mu -d 1 -o TD >> gpu.logdone第二步:在另一个单元格中在后台执行上面的脚本。%%bash --bgbash gpu_usage.sh第 3 步:运行推理。请注意,该脚本将记录前 10 秒的 GPU 使用情况,根据您的模型运行时间更改它。GPU 利用率结果将保存在gpu.log文件中。

慕沐林林

还有另一种查看 gpu 使用情况的方法,但此方法仅适用于查看内存使用情况。转到单击运行时 - >管理会话。这使您可以查看需要多少内存才能增加批处理大小。
随时随地看视频慕课网APP

相关分类

Python
我要回答