tensorflow之如何使用GPU而不是CPU问题

作者:叩钉吧zz 时间:2023-07-06 13:05:48 

如何使用GPU而不是CPU

首先查看设备

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())

如果发现只有一个CPU可用

则说明可能存在一下情况: 

1 tensorflow-gpu是否安装,版本查看,如果版本低于tensorflow,则默认启动CPU(t-gpu版本最好高于t)

pip install tensorflow-gpu==2.3.0 -i https://pypi.douban.com/simple/

2 CUDA初始化

在开始训练的前面输入如下:

# 使用CPU:
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
os.environ["CUDA_VISIBLE_DEVICES"] = "-1" # 这一行注释掉就是使用cpu,不注释就是使用gpu
# 使用GPU:
import os
os.environ["CUDA_DEVICE_ORDER"] = "PCI_BUS_ID"
# os.environ['CUDA_VISIBLE_DEVICES'] = "0" #这个是仅选择使用GPU 0
# os.environ['CUDA_VISIBLE_DEVICES'] = "1" #这个是仅选择使用GPU 1
# os.environ['CUDA_VISIBLE_DEVICES']  = “0,1” #设置当前使用的GPU设备为0,1号

tensorflow使用GPU的设置方式

方法一

Config=tf.ConfigProto(allow_soft_placement=True)  ##:如果你指定的设备不存在,允许TF自动分配设备
Config.gpu_options.allow_growth=True  ##动态分配内存
sess=tf.session(config=config)

方法二

gpu_options = tf.GPUOptions(allow_growth=True)
gpu_options =tf.GPUOptions(per_process_gpu_memory_fraction=0.8,allow_growth=True) ##每个gpu占用0.8的显存
config=tf.ConfigProto(gpu_options=gpu_options,allow_soft_placement=True)
sess=tf.session(config=config)##如果电脑有多个GPU,tensorflow默认全部使用。如果想只使用部分GPU,可以设置CUDA_VISIBLE_DEVICES。

控制使用哪个gpu

os.environ[“CUDA_DEVICE_ORDER”] = “PCI_BUS_ID” ##指定的设备名称
os.environ[‘CUDA_VISIBLE_DEVICES'] = ‘0' #使用 GPU 0
os.environ[‘CUDA_VISIBLE_DEVICES'] = ‘0,1' # 使用 GPU 0,1

来源:https://blog.csdn.net/weixin_40827685/article/details/110572212

标签:tensorflow,GPU,CPU
0
投稿

猜你喜欢

  • python打印文件的前几行或最后几行教程

    2022-04-30 01:14:09
  • Python中的多行注释文档编写风格汇总

    2023-05-05 02:41:18
  • Vue中使用vee-validate表单验证的方法

    2024-06-05 15:29:04
  • Golang时间处理中容易踩的坑分析解决

    2024-04-25 15:00:04
  • 利用Pygame制作简单动画的示例详解

    2022-10-11 21:22:12
  • python requests.get带header

    2022-07-28 20:50:40
  • python 性能优化方法小结

    2022-08-04 21:13:43
  • Python tkinter模块弹出窗口及传值回到主窗口操作详解

    2023-09-27 23:03:05
  • Python计算两个日期相差天数的方法示例

    2023-05-17 13:59:21
  • Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享

    2023-05-01 17:28:00
  • Golang验证器之validator是使用详解

    2024-01-29 23:40:28
  • Go 语言入门之net/url 包

    2024-05-29 22:06:33
  • vue3.0如何在全局挂载对象和方法

    2024-05-13 09:07:59
  • ASP编程常用的分页代码

    2007-09-11 13:57:00
  • mysql日志文件在哪 如何修改MySQL日志文件位置

    2024-01-22 22:09:14
  • Python从文件中读取数据的方法步骤

    2023-05-05 07:45:32
  • PYTHON正则表达式 re模块使用说明

    2021-11-25 15:06:50
  • Python3 如何开启自带http服务

    2023-07-27 14:33:46
  • PHP遍历目录实现方法介绍

    2023-05-25 06:31:41
  • PyTorch一小时掌握之神经网络气温预测篇

    2022-07-30 23:52:19
  • asp之家 网络编程 m.aspxhome.com