假设cpu核数为4
cpu_num = 4
config = tf.ConfigProto(device_count={"CPU": cpu_num},
inter_op_parallelism_threads = cpu_num,
intra_op_parallelism_threads = cpu_num,
log_device_placement=True)
sess = tf.Session(config=config)
device_count : 设置最高使用CPU核数上限
inter_op_parallelism_threads和intra_op_parallelism_threads告诉session操作的线程并行程度,如果值越小,线程的复用就越少,越可能使用较多的CPU核数。如果值为0,TF会自动选择一个合适的值。
log_device_placement = True ,可以获取到 operations 和 Tensor 被指派到哪个设备(几号CPU或几号GPU)上运行,会在终端打印出各项操作是在哪个设备上运行的。