C++ 默认情况下Tensorflow如何使用CPU内核?
假设我们没有任何C++ 默认情况下Tensorflow如何使用CPU内核?,c++,tensorflow,parallel-processing,C++,Tensorflow,Parallel Processing,假设我们没有任何GPU。我们有一台机器,它有一个CPU和N内核。我想在CPU上训练一个神经网络,并尽可能多地利用CPU 我知道我可以设置inter_op_parallelism_threads和intra_op_parallelism_threads变量来控制Tensorflow中的并行性。但我想知道默认情况下Tensorflow如何处理CPU核之间的并行性 我最初的猜测是,默认情况下,Tensorflow将所有CPU内核视为一个设备,并使用Eigen库在所有内核上同时运行一个单个操作,我们没有
GPU
。我们有一台机器,它有一个CPU
和N
内核。我想在CPU上训练一个神经网络,并尽可能多地利用CPU
我知道我可以设置inter_op_parallelism_threads
和intra_op_parallelism_threads
变量来控制Tensorflow中的并行性。但我想知道默认情况下Tensorflow如何处理CPU核之间的并行性
我最初的猜测是,默认情况下,Tensorflow将所有CPU内核视为一个设备,并使用Eigen
库在所有内核上同时运行一个单个操作,我们没有任何操作间并行性(这意味着并行运行多个操作)
我知道这件事。但这不是我要找的。我想知道tensorflow本身是如何处理CPU核之间的并行性的。如果你想优化CPU,你可能应该使用MKL版本(我相信Linnux上的默认conda版本),默认情况下它会使用尽可能多的核谢谢@YaroslavBulatov,这是否意味着tensorflow在多核cpu的默认情况下不使用inter_op_parallelism_线程?