第一个Graph图 Tensorflow程序可以通过tf.device函数来指定运行每一个操作的设备 这个设备可以是本地的CPU或GPU,也可以是某一远程服务器 import tensorflow as tf ''' Tensorflow会给每一个可用的设备一个名称,tf.device函数可以通过设备的名称来指定执行运算的设备。比如CPU在Tensorflow中的名称为/cpu:0 在默认情况下,即使机器有多个CPU,Tensorflow也不会区分它们,所有的CPU都是用/cpu:0作为名称 而一台机器上不同GPU的名称是不同的,第n个GPU在Tensorflow中的名称为/gpu:n 比如第一个GPU的名称为/gpu:0,第二个GPU名称为/gpu:1,以此类推 Tensorflow提供了一个快捷的方式来查看运行每一个计算的设备 在生成会话时,可以通过log_device_placement参数来打印运行每一个计算的设备 with tf.device('/cpu:0') 安装了gpu版本的tensorflow的话with块内的在CPU执行,with块外的在GPU执行 GPU版本的tensorflow在PC上安装的话,需要NVIDIA的显卡,并且显卡支持cuda 除了可以看到最后的计算结果之外,还可以看到类似"add: /job:localhost/replica:0/task:0/cpu:0/"这样的输出 这些输出显示了执行的每一个运算的设备。比如加法操作add是通过CPU来运行的,因为它的设备名称中包含了/cpu:0 在配置好GPU环境的Tensorflow中,如果操作没有明确的指定运行设备,那么Tensorflow会优先选择GPU来执行代码 ''' with tf.device('/