dlbench git地址:https://github.com/hclhkbu/dlbench.git
cd到dlbench中,benchmark.py文件即为测试需要的中枢文件,采用python benchmark.py -config configfile命令即可开始训练,所得到的logs放在logs下面,logs分为两部分:收敛迭代速度和显卡的使用情况(相当于多次使用nvidia-smi命令)
configfile放在confige文件夹下面,有一个tensorflow的样例,可以看到具体设置的参数,在legacy里含有各种框架的config例子,可以根据需要调整
Config文件包含了<network type>; <network name>; <device id>; <device count>; <batch size>; <number of epochs>; <epoch size>; <Learning rate>这几项,network type就是测试的网络类型,network name就是测试的具体网络,后面的参数都可以根据情况自定义
正常情况下,使用中枢文件就可以做测试,然后查看logs的文件,但是如果测试不成功(如tensorflow,log文件里发现报错),可以手动cd到对应框架目录下,跑对应的文件。
Benchmark.py最终调用的文件位于tools里,tools下面含有多个框架,框架下对应rnn、cnn、fc的各种网络。
可以利用benchmark.py一次串行跑多个参数下的网络(会根据config自动跑,并写入log),也可以手动跑,或者手动在tools网络中加入写log的代码等。为了便于比较,我们优先跑一下resnet的网络,batch size 128,epoch 4吧,学习一下怎么用这个。
这个是我对这份代码使用方法的个人理解,如果大家发现有什么不对的地方,一块探讨。