tensorflow pow功能很慢

时间:2018-03-09 22:11:42

标签: performance tensorflow logarithm pow exp

我正在使用tensorflow来加速僵硬的化学求解器。在这个过程中,我经常要计算tf.pow(a,b),其中a是张量,b是常数。在分析期间,我发现tf.pow非常慢,甚至比tf.exp慢。我对此感到惊讶所以我将功率计算为tf.exp(tf.log(a)* b)并计时。令我惊讶的是,exponental日志的速度是tf.pow的两倍。这是为什么?这是非常意外的。

我应该提到我使用单精度浮点数作为我的张量,并且我在使用带有conda的pip安装的whl文件的CPU上运行python 3.6和tf v1.5的窗口

1 个答案:

答案 0 :(得分:0)

我相信Tensorflow的exppow操作正在调用Eigen的实现。看来Eigen正在使用exp的SIMD说明,而不是powhttps://eigen.tuxfamily.org/dox/group__CoeffwiseMathFunctions.html