zoukankan      html  css  js  c++  java
  • tensorflow按需分配GPU问题

    使用tensorflow,如果不加设置,即使是很小的模型也会占用整块GPU,造成资源浪费。

    所以我们需要设置,使程序按需使用GPU。

    具体设置方法:

    1 gpu_options = tf.GPUOptions(allow_growth=True)
    2 sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
    3 # sess = tf.InteractiveSession(config=tf.ConfigProto(gpu_options=gpu_options))
     1 gpu_no = '0' # or '1'
     2 os.environ["CUDA_VISIBLE_DEVICES"] = gpu_no
     3 
     4 # 定义TensorFlow配置
     5 config = tf.ConfigProto()
     6 
     7 # 配置GPU内存分配方式,按需增长,很关键
     8 config.gpu_options.allow_growth = True
     9 
    10 # 配置可使用的显存比例
    11 config.gpu_options.per_process_gpu_memory_fraction = 0.1
    12 
    13 # 在创建session的时候把config作为参数传进去
    14 sess = tf.InteractiveSession(config = config)
    1 gpu_options = tf.GPUOptions(allow_growth=True)
    2 # sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
    3 
    4 with tf.Session(config=tf.ConfigProto(gpu_options=gpu_options)) as sess:

     说明:使用jupyter notebook,如果没有上述设置,整个GPU会一直被占用;使用pycharm,虽然GPU不会被一直占用,但是运行时还是会占用整个GPU,所以也需要上述设置。

  • 相关阅读:
    MYSQL增量备份与恢复
    Centos7上MariaDB数据库启动问题解决
    mysql数据库的常用命令
    mysql数据库用户权限设置
    使mysql数据库支持简体中文
    如何在mysql数据库中开启使用tab键补全功能
    忘记mysql超户密码的解决方法
    Excel教程(复习)
    MySQL教程(复习)
    Linux教程(复习)
  • 原文地址:https://www.cnblogs.com/juluwangshier/p/11412437.html
Copyright © 2011-2022 走看看