Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在运行时更改TensorFlow操作设备的位置?_Tensorflow_Tensorflow Gpu_Tensorflow Xla - Fatal编程技术网

在运行时更改TensorFlow操作设备的位置?

在运行时更改TensorFlow操作设备的位置?,tensorflow,tensorflow-gpu,tensorflow-xla,Tensorflow,Tensorflow Gpu,Tensorflow Xla,据我所见,TensorFlow的设计目的是在单个tf.Session.run()中完全静态地放置设备。是否有一个已知的理想位置来插入代码,以便随时更改操作设备的位置 我知道Python级的静态方法,但我正在寻找C++级的一些东西,这样我就可以做一些类似于负载平衡的事情。 举个例子,假设我希望TensorFlow以交替的方式(我知道这并不理想)调度CPU和GPU的操作。如何在运行时执行此操作,以便在解决操作依赖关系和安排更多操作时,将操作环境更新为不同的设备?在操作启动之前(executor.cc

据我所见,TensorFlow的设计目的是在单个
tf.Session.run()
中完全静态地放置设备。是否有一个已知的理想位置来插入代码,以便随时更改操作设备的位置

我知道Python级的静态方法,但我正在寻找C++级的一些东西,这样我就可以做一些类似于负载平衡的事情。


举个例子,假设我希望TensorFlow以交替的方式(我知道这并不理想)调度CPU和GPU的操作。如何在运行时执行此操作,以便在解决操作依赖关系和安排更多操作时,将操作环境更新为不同的设备?在操作启动之前(executor.cc的第1651行),最好使用为给定操作的环境更改执行设备?还是我误解了一个操作是如何通过XLA来执行的,什么时候我可以改变设备放置的时间?

我也在寻找。在构建图形时,决定设备的位置似乎不合适。特别是因为可以使用
freeze_图
函数/脚本清除设备放置元数据。这意味着您以后加载保存的图形模型时,可以决定如何在部署的设备上放置图形的节点和边。