2
为什么TensorFlow 2比TensorFlow 1慢得多?
许多用户都将其作为切换到Pytorch的原因,但是我还没有找到牺牲/最渴望的实用质量,速度和执行力的理由/解释。 以下是代码基准测试性能,即TF1与TF2的对比-TF1的运行速度提高了47%至276%。 我的问题是:在图形或硬件级别上,什么导致如此显着的下降? 寻找详细的答案-已经熟悉广泛的概念。相关的Git 规格:CUDA 10.0.130,cuDNN 7.4.2,Python 3.7.4,Windows 10,GTX 1070 基准测试结果: UPDATE:禁用每下面的代码不会急于执行没有帮助。但是,该行为是不一致的:有时以图形方式运行会有所帮助,而其他时候其运行速度要比 Eager 慢。 由于TF开发人员没有出现在任何地方,因此我将自己进行调查-可以跟踪相关Github问题的进展。 更新2:分享大量实验结果,并附有解释;应该在今天完成。 基准代码: # use tensorflow.keras... to benchmark tf.keras; used GPU for all above benchmarks from keras.layers import Input, Dense, LSTM, Bidirectional, Conv1D from keras.layers import Flatten, Dropout from keras.models import Model from keras.optimizers import Adam …