详解tf.device()指定tensorflow运⾏的GPU或CPU设备实现
在tensorflow中,我们可以使⽤ tf.device() 指定模型运⾏的具体设备,可以指定运⾏在GPU还是CUP上,以及哪块GPU上。
设置使⽤GPU
使⽤ tf.device('/gpu:1') 指定Session在第⼆块GPU上运⾏:
import tensorflow as tf
with tf.device('/gpu:1'):
v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
sumV12 = v1 + v2
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
print sess.run(sumV12)
ConfigProto() 中参数log_device_placement=True会打印出执⾏操作所⽤的设备,以上输出:
如果安装的是GPU版本的tensorflow,机器上有⽀持的GPU,也正确安装了显卡驱动、CUDA和cuDNN,默认情况下,Session会在GPU上运⾏:
import tensorflow as tf
v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
sumV12 = v1 + v2
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
print sess.run(sumV12)
默认在GPU:0上执⾏:
tensorflow版本选择设置使⽤cpu
tensorflow中不同的GPU使⽤/gpu:0和/gpu:1区分,⽽CPU不区分设备号,统⼀使⽤ /cpu:0
import tensorflow as tf
with tf.device('/cpu:0'):
v1 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v1')
v2 = tf.constant([1.0, 2.0, 3.0], shape=[3], name='v2')
sumV12 = v1 + v2
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
print sess.run(sumV12)
到此这篇关于详解tf.device()指定tensorflow运⾏的GPU或CPU设备实现的⽂章就介绍到这了,更多相关tensorflow运⾏GPU或CPU内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论