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 - Fatal编程技术网

默认情况下TensorFlow作业是否使用多个核?

默认情况下TensorFlow作业是否使用多个核?,tensorflow,Tensorflow,我正在运行TensorFlow模型的imagenet。我已经按照中所述检测了sess.run,并在chrome://tracing 我想知道TF有时会一直使用多核还是单核。我认为ops可以并行运行时使用了多个内核,如图中的红框所示。然而,所有这6个线程都列在/job:localhost/replicate:0/task:0/cpu:0下,这让我对我的解释产生了疑问。cpu:0是否表示所有cpu核心 我在一个有8个内核的桌面上运行。我运行htop以查看TF运行期间的内核利用率,我只看到一个内核达

我正在运行TensorFlow模型的imagenet。我已经按照中所述检测了sess.run,并在chrome://tracing

我想知道TF有时会一直使用多核还是单核。我认为ops可以并行运行时使用了多个内核,如图中的红框所示。然而,所有这6个线程都列在/job:localhost/replicate:0/task:0/cpu:0下,这让我对我的解释产生了疑问。cpu:0是否表示所有cpu核心


我在一个有8个内核的桌面上运行。我运行htop以查看TF运行期间的内核利用率,我只看到一个内核达到95-100%的饱和。

我发现了这个问题。所有核心都封装在cpu:0中,即TensorFlow在默认情况下确实使用多个cpu核心。

我不希望TensorFlow看到/知道cpu:0的多个核心。我该怎么做?有两种方法可以做到这一点:1)在操作系统级别禁用内核的可见性,2)告诉TensorFlow不要在运行时使用其他内核。我想你想要后一个,或者至少那是我喜欢的解决方案。如果是这样的话,请阅读一个很好地描述了细节的现有答案,这里如果您真的想要第一个选项,它在某种程度上取决于操作系统。这是一个针对Debian系统的解决方案——您建议的解决方案将线程数减少到内核数,但不是1。device_count限制正在使用的CPU数量,而不是内核或线程的数量。