详解tf.device()指定tensorflow运行的GPU或CPU设备实现

 更新时间:2021年02月20日 11:12:19   作者:-牧野-  
这篇文章主要介绍了详解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上执行:


设置使用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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python实现创建词云的示例详解

    Python实现创建词云的示例详解

    词云一般是根据输入的大量词语生成的,如果某个词语出现的次数越多,那么相应的大小就会越大,本文将利用wordcloud模块实现词云生成,需要的可以参考下
    2023-10-10
  • Python全栈之学习JS(2)

    Python全栈之学习JS(2)

    这篇文章主要为大家介绍了Python全栈之JS,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • Python文件读写常见用法总结

    Python文件读写常见用法总结

    今天小编就为大家分享一篇关于Python文件读写常见用法总结,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Django框架cookie和session方法及参数设置

    Django框架cookie和session方法及参数设置

    这篇文章主要为大家介绍了Django框架cookie和session参数设置及介绍,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • 详解用python自制微信机器人,定时发送天气预报

    详解用python自制微信机器人,定时发送天气预报

    这篇文章主要介绍了用python自制微信机器人,定时发送天气预报,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • python3实现将json对象存入Redis以及数据的导入导出

    python3实现将json对象存入Redis以及数据的导入导出

    这篇文章主要介绍了python3实现将json对象存入Redis以及数据的导入导出,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • 详解django的serializer序列化model几种方法

    详解django的serializer序列化model几种方法

    序列化是将对象状态转换为可保持或传输的格式的过程。这篇文章主要介绍了详解django的serializer序列化model几种方法。具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-10-10
  • CentOS 6.X系统下升级Python2.6到Python2.7 的方法

    CentOS 6.X系统下升级Python2.6到Python2.7 的方法

    今天到新公司发现用的CentOS 6.X系统,默认安装的Python是2.6版本,可是我的程序引用的部分库需要2.7版本或以上,所以只能升级Python到2.7版本了,现在将升级的步骤分享给大家,有需要的朋友们可以参考借鉴。
    2016-10-10
  • 使用 Python 处理 JSON 格式的数据

    使用 Python 处理 JSON 格式的数据

    JSON 是一个很好的选择。如果你对 Python 有所了解,就更加事半功倍了。下面就来介绍一下如何使用 Python 处理 JSON 数据。感兴趣的朋友跟随小编一起看看吧
    2019-07-07
  • pyspark操作MongoDB的方法步骤

    pyspark操作MongoDB的方法步骤

    这篇文章主要介绍了pyspark操作MongoDB的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01

最新评论