CUDA进阶第四篇-如何实时获得GPU各种资源利用率(NVML)

CUDA进阶第四篇-如何实时获得GPU各种资源利用率

前几天在玩digits的时候发现在训练的过程中网页上能够动态显示显卡利用率,显存利用率和温度。突然想起来前几天有人问过这个问题并查了一下目前好像并没有类似的中文博客,所以就探究了一下这个问题。
首先我去翻了一下digits的源码,发现是用python调用了NVML(nvidia-management-library)这么个库。
原来NVIDIA早就做好这么个库了,只是以前一直不知道。NVML已经有比较广泛的应用,比如NVIDIA-smi就是基于NVML库做的,还有一些第三方工具
下面开始正文,本文主要简单介绍一下NVML的安装和使用

环境:Ubuntu 14.04 cuda 7.0
NVML的安装十分简单,下载run文件,然后运行安装即可,安装目录选择默认。
NVML主要包括两部分,一个lib和一个nvml.h头文件,还有其他的一些乱七八糟的东西,可以看一下安装的log文件(tmp/gdk_install_***.log)。
这里很重要的就是我们需要知道lib文件和nvml头文件的路径,编译时需要加进去(不懂的请bing gcc -I -L)。
但是有一个比较蛋疼的事情是这个路径针对不同的linux版本是不同的,而且在安装cuda的时候会自动给你按上一个nvml lib库,但是却没有头文件。所以到底该用哪个呢?
这里有一个stackoverflow上关于 编译问题可以供参考。

不过像我这样的懒人比比皆是,所以nvml提供了一个example(Ubuntu 14.04 的路径是/usr/src/gdk/nvml/examples),这个文件夹下包含一个example.c和makefile,所以只需要按照这个makefile里的路径把参数添加到你的项目里即可~

Ubuntu 14.04下lib的路径是/usr/src/gdk/nvml/lib/
头文件路径是-I/usr/include/nvidia/gdk。
使用时请添加头文件 #include< nvml.h >
NVML API文档:http://docs.nvidia.com/deploy/nvml-api/index.html

写在后面

OpenCUDA,CUDA图像算法开源项目,算法内都有详细的注释,大家一起学习。


私人接各种CUDA相关外包(调试、优化、开发图像算法等),有意向请联系,加好友时请注明。
这里写图片描述

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值