当前位置: 首页 > news >正文

用py获取显卡的占用率

这是什么

这是一个py 编写的程序,功能上面是用于获取 NVIDIA 显卡的占用率,并通过串口将其发送出去。同时,程序也会读取串口接收到的数据并显示在终端上,这样方便调试。

注意

因为我用的是N卡所以这个程序限制N卡使用,然后你如果要测试需要把 port 变量设置为正确的串口名称,波特率也要配合一下

import subprocess
import serial
import timedef get_gpu_usage():# 运行 `nvidia-smi` 并获取输出result = subprocess.run(['nvidia-smi', '--query-gpu=utilization.gpu', '--format=csv,noheader,nounits'], stdout=subprocess.PIPE, text=True)# 解析输出gpu_usage = int(result.stdout.strip())return gpu_usagedef send_usage_via_serial(ser, usage):# 创建要发送的字符串usage_str = f"GPU Usage: {usage}%\n"  # 创建以 "GPU Usage: xx%" 格式的字符串print(f"Sending: {usage_str.strip()}")  # 调试输出,去掉末尾的换行符ser.write(usage_str.encode())  # 编码为字节流发送def read_from_serial(ser):if ser.in_waiting > 0:return ser.read(ser.in_waiting).decode('utf-8').strip()return Noneif __name__ == "__main__":port = 'COM10'baudrate = 115200timeout = 1try:# 初始化串口连接ser = serial.Serial(port, baudrate=baudrate, timeout=timeout)print(f"串口 {port} 已连接。")while True:try:# 获取 GPU 占用百分比gpu_usage = get_gpu_usage()# 显示在终端print(f"GPU Usage: {gpu_usage}%")# 通过串口发送 GPU 占用百分比send_usage_via_serial(ser, gpu_usage)# 读取并显示串口收到的信息received_data = read_from_serial(ser)if received_data:print(f"Received from serial: {received_data}")# 等待 0.9 秒time.sleep(0.2)except Exception as e:print(f"发生错误: {e}")except KeyboardInterrupt:print("程序已终止。")except Exception as e:print(f"初始化串口时发生错误: {e}")finally:if ser.is_open:ser.close()  # 确保在程序结束时关闭串口连接print(f"串口 {port} 已关闭。")


http://www.mrgr.cn/news/5430.html

相关文章:

  • 全套安全帽佩戴检测算法源码与实战应用分享
  • Swift语言服务器协议(LSP)深度解析:开启Swift开发的新篇章
  • JWT-JSON Web Token
  • 成本效益分析:观测云投资的回报
  • GTK的表格宽度调节
  • 记录一个变量溢出的bug
  • Docker的概述及如何启动docker的镜像、远程管理宿主机的docker进程
  • ubuntu x86_64系统上安装运行aarch系统的虚拟机
  • C++:病毒系列回归记2/3 (Doge智能系统已上线)
  • Spring Boot 实现全局异常处理
  • Keil C51 插件 检测所有if语句
  • python——数据分析
  • 七种常见的排序算法和实现
  • SQL SERVER日常表碎片和统计信息优化脚本
  • 多个pdf怎么合并成一个pdf?介绍10个pdf合并成一个pdf免费版软件(近期更新)
  • 78、 ansible----playbook
  • 鸿蒙ArkTs使用axios发起网络请求并对请求参数加密
  • 一款基于Typecho博客的双栏极致优化主题-Joe主题
  • 加速网络体验,Squid缓存代理:让浏览如飞,畅享无限网络速度!
  • 【数据结构-前缀异或】力扣1310. 子数组异或查询