Skip to content

Victor-Alen/GPUPowerLog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GPUPowerLog 使用说明

功能概述

本项目用于自动采集、分析和可视化 Jetson tegrastats 日志,支持:

  • 自动备份旧 log 文件,按首次采集时间命名
  • 自动清空 log 并启动 tegrastats 后台采集
  • 支持自定义采集间隔(单位:秒)
  • 支持最大采集时长(默认 30 分钟),超时后自动停止采集并分析
  • 可手动随时停止采集并分析
  • 自动生成 GPU 利用率/功耗折线图和统计信息图片
  • 统计信息支持跳过前面功率无波动区间,并可通过开关决定是否统计无波动区间
  • 横坐标支持实际时间(秒)

目录结构

GPUPowerLog/
├── log                # 当前采集日志
├── log_YYYYmmdd_HHMMSS # 历史备份日志
├── plot_gpu.py        # 日志分析与绘图脚本
├── start.sh           # 启动采集脚本
├── stop.sh            # 停止采集并分析脚本
├── gpu_util_power.png # GPU利用率/功耗折线图
├── gpu_power_stats.png# 统计信息图片

使用方法

1. 启动采集

bash start.sh
  • 会自动备份旧 log 文件
  • 清空 log 并以 INTERVAL(秒)为间隔启动 tegrastats 采集
  • 30 分钟后自动停止采集并分析,生成图片
  • 你可以在脚本内修改 INTERVAL 和最大采集时间

2. 手动停止采集并分析

bash stop.sh
  • 会自动查找并终止 tegrastats 进程
  • 自动运行 plot_gpu.py 生成图片

3. 日志分析与绘图

python3 plot_gpu.py [interval]
  • interval 可选,单位秒,默认为 5
  • 横坐标为实际时间(秒)
  • 统计信息支持跳过前面功率无波动区间
  • 通过修改 plot_gpu.pyINCLUDE_STABLE = True/False 控制是否统计无波动区间

4. 结果查看

  • gpu_util_power.png:GPU利用率/功耗随时间变化折线图
  • gpu_power_stats.png:统计信息图片(平均功率、最大/最小功率、总能耗等)

进阶说明

  • 支持 Docker 容器与本地共享目录采集与分析
  • 所有图片每次分析都会覆盖生成
  • 日志文件自动按首次采集时间备份,防止数据丢失

依赖

  • Python 3
  • matplotlib、numpy

如需自定义功能或有问题请联系维护者。

About

本项目用于自动采集、分析和可视化 Jetson tegrastats 日志

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors