从我运行的实验来看,似乎TensorFlow自动使用一台机器上的所有CPU . 此外,似乎TensorFlow将所有CPU称为/ cpu:0 .
我是对的,只有一台机器的不同GPU被索引并被视为单独的设备,但是一台机器上的所有CPU都被视为一台设备吗?
从TensorFlows的角度来看,有没有什么方法可以让多台CPU查看它?
默认情况下,进程可用的所有CPU都在 cpu:0 设备下聚合 .
cpu:0
mrry here的答案显示了如何创建像 /cpu:1 , /cpu:2 这样的逻辑设备
/cpu:1
/cpu:2
似乎没有将逻辑设备固定到特定物理核心或能够在张量流中使用NUMA节点的工作功能 .
一种可能的解决方法是在一台机器上使用带有多个进程的分布式TensorFlow,并在Linux上使用 taskset 将特定进程固定到特定内核
taskset
1 回答
默认情况下,进程可用的所有CPU都在
cpu:0
设备下聚合 .mrry here的答案显示了如何创建像
/cpu:1
,/cpu:2
这样的逻辑设备似乎没有将逻辑设备固定到特定物理核心或能够在张量流中使用NUMA节点的工作功能 .
一种可能的解决方法是在一台机器上使用带有多个进程的分布式TensorFlow,并在Linux上使用
taskset
将特定进程固定到特定内核