You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何记录GPU使用率并写入文件(如json),适配TensorFlow Keras开发场景

GPU使用率记录并写入JSON的可行实现方案
  • 基于nvidia-smi原生能力实现
    你之前对nvidia-smi的认知存在偏差:它本身支持自定义输出字段、指定结构化格式,完全可以用来采集使用率后转存JSON。执行以下命令可以直接输出带时间戳的GPU利用率、显存占用等核心指标:
    nvidia-smi --query-gpu=timestamp,utilization.gpu,memory.used,memory.total --format=csv,noheader,nounits
    
    你可以写个简单的Python/Shell脚本定时执行该命令,把输出的CSV格式数据按字段拆解后,直接序列化写入JSON文件即可,无额外依赖,适配所有NVIDIA驱动环境。
  • 基于pynvml库做Python原生内嵌采集
    如果你不想额外启动独立进程,想把采集逻辑直接写在Keras训练脚本里,可以用NVIDIA官方的Python绑定库pynvml。你可以自定义Keras的回调函数,在每个epoch/step结束时调用pynvml接口读取GPU使用率,拿到数值后可以和训练的loss、准确率等指标一起存入JSON文件,和训练流程无缝结合,数据对齐度更高。
  • 基于TensorFlow内置Profiler采集
    如果你需要和TensorFlow训练 timeline 完全对齐的GPU使用率数据,可以用TensorFlow自带的tf.profiler接口,在训练过程中直接采集GPU的计算负载、显存占用数据,导出后可以直接转存为JSON格式,优势是数据和训练步骤严格对应,方便后续做性能瓶颈分析。

如果需要持续记录整个训练周期的GPU数据,建议单独开一个守护线程/进程跑采集逻辑,避免阻塞训练主进程。

内容的提问来源于stack exchange,提问作者user11849691

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 21:09:04