Hi all, I am a newbie to TensorFlow and have a quite naive question. It seems that tf.tensordot
is much slower than np.dot
. For example
a = tf.Variable( tf.random.uniform( (8, 1) ) )
b = tf.Variable( tf.random.uniform( (8, 1) ) )
for i in range(10000):
c = tf.tensordot( a, b, axes=1 )
takes 2.2 seconds to finish, but
a = np.random.randn( (8,1) )
b = np.random.randn( (8,1) )
for i in range(10000):
c = np.dot(a, b)
takes only 0.01 seconds. I think the reason is that TensorFlow is constructing the computation graph in each iteration when tf.Variable
is used. Is there any documentation where I can learn what is being done with the tf.Variable
and understand what kind of operations create the overhead?