如何分析tensorflow时间线跟踪:GPU有大量空闲时间

如何分析tensorflow时间线跟踪:GPU有大量空闲时间,tensorflow,Tensorflow,我通过以下方式添加配置文件代码(时间线) 在我得到chrome跟踪文件后,我在chrome中打开它(chrome://tracing/). 以下是我的结果: 你可以看到在GPU中有很多空闲时间 我的问题是:为什么GPU什么都不做? 这是我的密码: batch_x,batch_y = mnist.train.next_batch(FLAGS.batch_size) run_metadata = tf.RunMetadata()

我通过以下方式添加配置文件代码(时间线)

在我得到chrome跟踪文件后,我在chrome中打开它(chrome://tracing/). 以下是我的结果: 你可以看到在GPU中有很多空闲时间

我的问题是:为什么GPU什么都不做?

这是我的密码:

                batch_x,batch_y = mnist.train.next_batch(FLAGS.batch_size)
            run_metadata = tf.RunMetadata()
            _,loss,summary,step = sess.run([train_op, total_loss,summary_op,global_step],
                    feed_dict={x:batch_x.reshape([FLAGS.batch_size,IMAGE_SIZE,IMAGE_SIZE,NUM_CHANNELS]),y:batch_y},
                    options=tf.RunOptions(trace_level=tf.RunOptions.FULL_TRACE),
                    run_metadata=run_metadata)
            writer.add_summary(summary,step)
我在谷歌上搜索过,很多人认为这可能是由feed_dict引起的,因为这不是一种推荐的数据传输方式。但我无法从这个时间线中找到任何证据

我使用line_profile来分析此函数,即数据提取操作:

batch_x,batch_y = mnist.train.next_batch(FLAGS.batch_size)
只需要0.3毫秒。有人能帮我找出原因吗?欢迎提出任何建议