详解tf.device()指定tensorflow运行的GPU或CPU设备实现
作者:-牧野- 发布时间:2021-03-25 19:39:27
标签: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)
来源:https://blog.csdn.net/dcrmg/article/details/79747882


猜你喜欢
- 表结构: mysql> desc demo; +-------+------------------+------+-----+---
- 本文实例讲述了Python实现的多线程http压力测试代码。分享给大家供大家参考,具体如下:# Python version 3.3__au
- Python中的中文是个很头痛的问题,Python2和Python3都会出现,而且py2中出现的概率要大些。 有一道面试题: Py
- 数据import numpy as npimport pandas as pddata = [{'Name': '小
- Pandas是一个强大的数据处理库,它提供了高性能、易于使用的数据结构和数据分析工具。本文将介绍Pandas常用的数据结构和常用的数据分析技
- 一、绘制带趋势线的散点图实现功能:在散点图上添加趋势线(线性拟合线)反映两个变量是正相关、负相关或者无相关关系。实现代码:import pa
- python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。smtp协议的基本命令包括:HELO 向服
- Python 如何转换string到float?简单几步,让你轻松解决。打开软件,新建python项目,如图所示右键菜单中创建.py文件,如
- 当然,5.6的GUID功能的出现也带来了multi-master的无限可能,不过这个已经是题外话了。 本文主要介绍一种非实时的适用于各版本M
- PHP字符串函数包括查找字符位置函数;提取子字符函数;替换字符串;字符长度;比较字符函数;分割成数组字符;去除空格等等。PHP语言中的字符串
- 打开文件import xlrddata = xlrd.open_workbook('路径')获取文件中所有工作表的名称。da
- websocket在vue2中的封装使用先说需求: 页面中有websocket连接,进入的时候发送参数到后端,后端发送消息, 离开页面时发送
- 首先需要注意的是,本文即将提到的 Druid,并非阿里巴巴的 Druid 数据库连接池,而是另一个大数据场景下的解决方案:Apache Dr
- 一、MatplotlibMatplotlib是Python中众多数据可视化库的鼻祖,其设计风格与20世纪80年代设计的商业化程序语言MATL
- 这篇文章主要介绍了wxpython自定义下拉列表框过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要
- 如果是导入有中文的数据,我的mysql 设置的utf8 字符集,所以你要导入的xxx.txt 文件也要保存ut
- 最近心血来潮加上有点闲情,动手写了第一个JavaScript版的俄罗斯方块Easy Tetris.先上Easy Tetris俄罗斯方块游戏截
- 本文实例讲述了python使用正则表达式分析网页中的图片并进行替换的方法。分享给大家供大家参考。具体分析如下:这段代码分析网页中的所有图片表
- 使用sql语句创建和删除约束 约束类型 主键约束(Primary Key constraint) --:要求主键列数据唯一,并且不允许为空。
- 先使用vue cli构建一个自己的vue项目1.npm i -g vue-cli2.vue init webpack sell (sell是