zoukankan      html  css  js  c++  java
  • Tensorflow取消占用全部GPU

    参考:https://www.cnblogs.com/jiu0821/p/9501665.html

    Tensorflow默认是会占用全部的GPU,而有时候你根本不需要那么占用那么多GPU资源,这时候就可以采用如下三种方法进行解决:

    1、在构造tf.Session()时候通过传递tf.GPUOptions作为可选配置参数的一部分来显式地指定需要分配的显存比例,如下所示:

    # 假如有12GB的显存并使用其中的4GB:
    gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333)
    sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))

    per_process_gpu_memory_fraction指定了每个GPU进程中使用显存的上限,但它只能均匀作用于所有GPU,无法对不同GPU设置不同的上限

    2、尝试如下设置:

    config = tf.ConfigProto()
    config.gpu_options.allow_growth=True
    sess = tf.Session(config=config)

    当allow_growth设置为True时,分配器将不会指定所有的GPU内存,而是根据需求增长

    3、指定GPU编号:

    import os
    os.environ["CUDA_VISIBLE_DEVICES"] = "0"
    
    或者在脚本或者命令行中指定
    export CUDA_VISIBLE_DEVICES=0
  • 相关阅读:
    JavaScript
    monkeyrunner总结
    repo简介
    android4.4 settings 中控制卡1 卡2都振动
    卡1卡2设置不同的默认铃声
    获取布局 ActionBar
    android Settings 解析
    设置应用中出现NFC服务,去掉
    判断当前网络显示运营商
    设置中默认铃声 通知 闹钟等
  • 原文地址:https://www.cnblogs.com/lucifer1997/p/10104253.html
Copyright © 2011-2022 走看看