#amd-gpu #tui #display #counter #sensors #performance #tool

app amdgpu_top

显示AMDGPU使用情况的工具。该工具显示从性能计数器(GRBM、GRBM2)、传感器、fdinfo、gpu_metrics和AMDGPU驱动程序收集的信息。

18个版本 (8个破坏性版本)

新版本 0.9.1 2024年8月14日
0.9.0 2024年7月17日
0.8.5 2024年5月29日
0.8.0 2024年3月29日
0.1.7 2023年5月2日

#20 in 硬件支持

Download history 54/week @ 2024-04-29 69/week @ 2024-05-06 258/week @ 2024-05-13 127/week @ 2024-05-20 267/week @ 2024-05-27 79/week @ 2024-06-03 75/week @ 2024-06-10 50/week @ 2024-06-17 67/week @ 2024-06-24 40/week @ 2024-07-01 65/week @ 2024-07-08 189/week @ 2024-07-15 95/week @ 2024-07-22 59/week @ 2024-07-29 45/week @ 2024-08-05 204/week @ 2024-08-12

每月下载量:417

MIT许可证

1MB
4K SLoC

AMDGPU_TOP

amdgpu_top 是一个显示AMD GPU利用率的工具,类似于 umrclbr/radeontopintel_gpu_top
该工具显示从性能计数器(GRBM、GRBM2)、传感器、fdinfo和AMDGPU驱动程序收集的信息。

简单的TUI
(类似于nvidia-smi、rocm-smi)
TUI GUI
amdgpu_top Simple TUI amdgpu_top TUI amdgpu_top GUI mode

依赖的动态库

  • libdrm
  • libdrm_amdgpu

用法

cargo run -- [options ..]
# or
amdgpu_top [options ..]
# Run TUI mode
amdgpu_top

# Run GUI mode
amdgpu_top --gui

# Run SMI mode
amdgpu_top --smi

# Dump AMDGPU info
amdgpu_top -d

# Dump AMDGPU info and gpu_metrics
amdgpu_top -d -gm

# Dump AMDGPU info and pp_table
amdgpu_top -d --pp-table

# Dump AMDGPU info in JSON format
amdgpu_top -d --json

# Dump DRM info
amdgpu_top --drm-info

# Decode gpu_metrics file
amdgpu_top --decode-gm <path>

# Decode gpu_metrics file and output in JSON format
amdgpu_top --json --decode-gm <path>

选项

FLAGS:
   -d, --dump
       Dump AMDGPU info. (Specifications, VRAM, PCI, ResizableBAR, VBIOS, Video caps)
       This option can be combined with the "-J" option.
   --list
       Display a list of AMDGPU devices.
   -J, --json
       Output JSON formatted data.
       This option can be combined with the "-d" option.
   --gui
       Launch GUI mode.
   --smi
       Launch Simple TUI mode. (like nvidia-smi, rocm-smi)
   -p, --process
       Dump All GPU processes and memory usage per process.
   --apu, --select-apu
       Select APU instance.
   --single, --single-gpu
       Display only the selected APU/GPU
   --no-pc
       The application does not read the performance counter (GRBM, GRBM2)
       if this flag is set.
       Reading the performance counter may deactivate the power saving feature of APU/GPU.
   -gm, --gpu_metrics, --gpu-metrics
       Dump gpu_metrics for all AMD GPUs.
       https://www.kernel.org/doc/html/latest/gpu/amdgpu/thermal.html#gpu-metrics
   --pp_table, --pp-table
       Dump pp_table from sysfs and VBIOS for all AMD GPUs.
       (only support Navi1x and Navi2x, Navi3x)
   --drm_info, --drm-info
       Dump DRM info.
       Inspired by https://gitlab.freedesktop.org/emersion/drm_info
   --dark, --dark-mode
       Set to the dark mode. (TUI/GUI)
   --light, --light-mode
       Set to the light mode. (TUI/GUI)
   -V, --version
       Print version information.
   -h, --help
       Print help information.

OPTIONS:
   -i <usize>
       Select GPU instance.
   --pci <String>
       Specifying PCI path. (domain:bus:dev.func)
   -s <u64>, -s <u64>ms
       Refresh period (interval) in milliseconds for JSON mode. (default: 1000ms)
   -n <u32>
       Specifies the maximum number of iteration for JSON mode.
       If 0 is specified, it will be an infinite loop. (default: 0)
   -u <u64>, --update-process-index <u64>
       Update interval in seconds of the process index for fdinfo. (default: 5s)
   --json_fifo, --json-fifo <String>
       Output JSON formatted data to FIFO (named pipe) for other application and scripts.
   --decode-gm <Path>, --decode-gpu-metrics <Path>
       Decode the specified gpu_metrics file.

TUI的命令

密钥
g 切换GRBM
r 切换GRBM2
v 切换VRAM/GTT使用情况
f 切换fdinfo
n 切换传感器
m 切换GPU度量
h 更改更新间隔(高=100ms,低=1000ms)
q 退出
P 按pid对fdinfo进行排序
M 按VRAM使用情况对fdinfo进行排序
G 按GFX使用情况对fdinfo进行排序
M 按MediaEngine使用情况对fdinfo进行排序
R 反转排序

JSON模式的示例使用

$ amdgpu_top --json | jq -c -r '(.devices[] |
  (.Info | .DeviceName + " (" + .PCI + "): ") +
  ([.gpu_activity | to_entries[] | .key + ": " + (.value.value|tostring) + .value.unit] |
  join(", ")))'

输出

AMD Radeon RX 6600 (0000:03:00.0): GFX: 13%, MediaEngine: 0%, Memory: 4%
AMD Radeon Graphics (0000:08:00.0): GFX: 0%, MediaEngine: 0%, Memory: null%
AMD Radeon RX 6600 (0000:03:00.0): GFX: 15%, MediaEngine: 0%, Memory: 5%
AMD Radeon Graphics (0000:08:00.0): GFX: 0%, MediaEngine: 0%, Memory: null%
AMD Radeon RX 6600 (0000:03:00.0): GFX: 3%, MediaEngine: 0%, Memory: 2%
AMD Radeon Graphics (0000:08:00.0): GFX: 0%, MediaEngine: 0%, Memory: null%
...

安装

软件包

从源代码构建

cargo install amdgpu_top

# or

git clone https://github.com/Umio-Yasuno/amdgpu_top
cd amdgpu_top
cargo install --locked --path .

无GUI

cargo install --locked --path . --no-default-features --features="tui"

特定发行版的说明

Debian/Ubuntu
sudo apt install libdrm-dev

二进制大小

特性 大小(去外壳)
json ~852K
tui ~1.3M
json, tui ~1.4M
json, tui, gui ~14M

参考

翻译

amdgpu_top 使用 cargo-i18nProject Fluent 进行翻译。
请参阅 pop-os/popsicle 了解更多支持的语言。

支持的语言

替代方案

如果 amdgpu_top 对您来说不够用或者您不喜欢它,请尝试以下应用程序。

依赖项

~7–48MB
~885K SLoC