在运行期间更改TensorFlow操作设备放置?

时间:2017-07-27 18:38:53

标签: tensorflow tensorflow-gpu tensorflow-xla

据我所知,TensorFlow旨在通过单个tf.Session.run()实现完全静态的设备放置。是否有一个已知的理想位置来插入代码以便即时更改操作设备的位置?

我已经了解了python级别的静态方法,但我正在寻找C ++级别的东西,以便我可以做一些类似于负载平衡的事情。

作为一个例子,让我们说我希望TensorFlow以交替的方式安排对CPU和GPU的操作(我知道并不理想)。我如何在运行时执行此操作,因此解决了操作依赖性并调度了更多操作操作环境更新为不同的设备?最好在启动操作之前使用DeviceMgrExecutorState::Process(TaggedNode tagged_node, int64 scheduled_usec)中为给定操作的环境更改执行设备(executor.cc的第1651行),这样做最好吗?或者我是否误解了何时通过XLA执行某项操作以及何时可以更改设备放置的最新时间?

0 个答案:

没有答案