python通过进程名获取当前进程gpu使用率
时间: 2023-07-12 11:43:59 浏览: 126
要获取当前进程的GPU使用率,可以使用NVIDIA的CUDA Toolkit提供的nvidia-smi命令行工具。可以在Python中使用subprocess模块调用该命令,并解析输出结果。
以下是一个获取当前进程GPU使用率的Python示例代码:
```python
import subprocess
def get_gpu_usage(process_name):
cmd = f"nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits -pids $(pidof {process_name})"
try:
output = subprocess.check_output(cmd, shell=True, stderr=subprocess.STDOUT)
gpu_usage = float(output.decode().strip())
except subprocess.CalledProcessError as e:
gpu_usage = 0.0
return gpu_usage
```
该函数接受一个进程名作为参数,使用nvidia-smi命令查找该进程的GPU使用率,并返回一个浮点数表示GPU使用率(范围为0-100)。如果找不到该进程或出现错误,则返回0.0。
使用示例:
```python
process_name = "my_process"
gpu_usage = get_gpu_usage(process_name)
print(f"GPU usage of process '{process_name}': {gpu_usage:.2f}%")
```
阅读全文