tensorflow监控指标获取
我觉得有不少人会需要tensorflow真正的执行时间和ps,worker之间的通信时间吧,这里是我做的一些尝试,对于执行时间而言,还是比较好得到的,通信时间怎么计算呢?
1. netperf工具
这是我从一篇论文中看到的工具,但是!
这个工具也是算作分布式环境下,测试的一个利器
不过,就我现在的使用体验,这是个测试工具,而非监控工具,为什么?我想知道的是,程序运行期间,有多少数据收发,通讯时间是多少,但是这里的话,能拿到的指标是,客户端向服务器发送了多大的包,根据响应时间测算出带宽是多少,这个测试功能>监控功能。
netperf -t TCP_STREAM -H node6 -c -C
不过还是可以用来监控cpu使用率的,小c是本机的使用率;大C是远程服务器的使用率。
转向了tensorboard监控吧...
2.tensorboard
tensorboard安装还是很简单的,就pip install tensorboard即可
监控也很简单,就找到log日志文件的地方:
tensorboard --logdir=/home/zc/dzx/models_cifar10/
但是这监控指标也太少了
去官网看了一下,要tensorboard+profiler
3. tensorboard+profiler
功能还是不少的:而且都是我想要的
看了一下环境要求:
但是现在的分布式tensorflow代码都是tensorflow1.x的,对于tensorflow2.0的要求,我只能说尝试过,但是真的没调通...
4. 最后怎么办?
你能知道服务器带宽吗?iftop
能知道一段时间内ps收发了多少数据吗?
以上搞定,就是有些麻烦
安装iftop:
yum install iftop –y
python pip : command not found解决方案:
yum install epel-release
yum install -y python-pip