tensorflow版本1.5的性能问题

时间:2018-01-28 17:28:55

标签: performance tensorflow

我最近从tf 1.4升级到1.5。这个过程顺利进行,一切似乎都像以前一样。但我注意到训练表现显着下降,通常从30%降至130%。我的模特的训练时间从大约1小时增加到超过两小时。 GPU负载也下降了约50%。

我想知道导致这种性能下降的原因是什么?我该如何解决这个问题。我的系统配置是:windows 7; 64; AMD CPU; GTX-1070 / 8GB,python 3.5.2。

1 个答案:

答案 0 :(得分:0)

我还注意到Windows 7 64bit上TF 1.5.0的性能显着下降,今天就试过了。

升级到CUDA 9.0和cuDNN 7.0。我有Intel Xeon,Quadro K4000,Python 3.6.4

将TF分别降级回1.4和CUDA / cuDNN,以确保。如果我发现使用较低版本再次更快,我将在TF github上启动一个问题并参考这篇文章。

编辑:

我最终在几个不同的网络上测试了tensorflow 1.4.0,1.5.0,-gpu 1.4.0和-gpu 1.5.0中的所有四个。

当我编写原始回复时,我正在处理的网络只是一个相当简单的RNN网络。所以我认为已经知道GPU实际上较低比RNN网络的CPU更好!假设的原因是,并且我认为有意义的是,RNN具有可并行化的计算组件少得多。 GPU能够非常快速地执行,因为它们包含非常多的内核,可以并行计算。实际上,在使用OpenHardwareMonitor时,GPU核心总负载仅在1.4.0上达到60%峰值,在1.5.0上达到52%峰值

因此,在该网络上,计算机的Xeon CPU实际上做得非常好。

有趣的是,仍然存在从1.4.0到1.5.0的小幅放缓,-gpu版本增加约25%,普通版本增长约7%。

但是,当我在包含Convolutional操作的不同网络上进行测试时,GPU确实表现得更快,并且在1.5g和普通版本中,1.5.0比1.4.0快了大约10%。

所以在一天结束时,我认为这取决于你正在使用什么类型的网络/操作,决定-gpu版本是否最好以及1.4.0或1.5.0是否最佳。