在Apple Silicon Mac上,PyTorch程序可以利用Metal Performance Shaders (MPS) 后端来加速GPU计算。为了监控GPU的使用率,你可以使用以下几种方法:
Activity Monitor
Activity Monitor
是macOS自带的系统监控工具,可以用来查看GPU的使用情况。
Activity Monitor
(可以通过Spotlight搜索打开)。View
> Update Frequency
> Very often (1 sec)
,以便更频繁地更新数据。Activity Monitor
窗口中,点击 Window
> GPU History
,这将打开一个显示GPU使用率的窗口。Metal System Trace
工具Metal System Trace
是Xcode中的一个工具,可以用来详细分析GPU的使用情况。
Xcode
> Open Developer Tool
> Instruments
。Instruments
中,选择 Metal System Trace
模板。Choose Target
按钮,选择你的PyTorch程序。Record
按钮开始记录。Instruments
将记录GPU的使用情况。py-metal-performance-shaders
库py-metal-performance-shaders
是一个Python库,可以用来监控Apple Silicon Mac上的GPU使用情况。
安装 py-metal-performance-shaders
库:
pip install py-metal-performance-shaders
在你的PyTorch程序中导入并使用该库来监控GPU使用率:
import torch
import torch.mps as mps
# 确保使用MPS后端
device = torch.device("mps")
x = torch.randn(10000, 10000, device=device)
# 监控GPU使用率
mps.profiler.start()
y = x * x
mps.profiler.stop()
# 打印GPU使用率
print(mps.profiler.get_stats())
nvidia-smi
类似的工具虽然Apple Silicon Mac上没有nvidia-smi
,但你可以使用mps
命令行工具来查看GPU的使用情况。
bash
mps stats
htop
或top
命令虽然htop
和top
主要用于监控CPU和内存使用情况,但它们也可以间接帮助你了解GPU的使用情况,尤其是在GPU密集型任务中。
htop
或 top
命令:
bash
htop
或
bash
top
通过以上方法,你可以有效地监控Apple Silicon Mac上PyTorch程序的GPU使用率。Activity Monitor
和 Metal System Trace
是系统自带的工具,适合快速查看和详细分析。py-metal-performance-shaders
库则提供了编程接口,适合在代码中直接监控GPU使用情况。