MXNet 用不同的卡训练不同的模型时,速度变慢


#1

在gpu0上单独训练模型1时,速度大概在800 samples/sec, 但是当我在gpu1上再训练一个模型2时,模型1和模型2的速度都会降至300 samples/sec,停止其中一张卡的任务,另一张卡的训练速度就会上来。有点迷,有人遇到相似的问题吗?


#2

很常见啊,不能只看显卡,你的硬盘跟得上读图速度吗?你的cpu跟得上图像预处理速度吗?性能不平衡,不匹配的话,比如训练模型1 的时候,硬盘或者cpu性能就已经到瓶颈了,再多开只会平分性能。甚至我发现我训练imagenet,开始的时候很快,后来显卡到80摄氏度后,速度就下降了,所以我也不知道是GPU太热自动降频了,还是GPU太热导致机箱里面太热,然后导致cpu或者硬盘性能下降了:joy:,哎,真惨,四块32G的tesla v100,只能跑到Mxnet官方提供的训练log里面速度的五分之一,但是人家显卡只比我多一倍啊。


#3

但是我用tensorflow在不同的卡上训练不同的模型就没有这样的问题:joy:,我用的是英伟达的dgx服务器,硬盘和cpu应该都没到瓶颈:sob:


#4

GPU 的确会在温度过高时降频的,降频后性能会下降,可以看下图,

出自:https://arxiv.org/pdf/1903.07486.pdf

image