Tensorflow常用会话设置GPU&ConfigProto

深度学习中常用的会话设置,仅供参考!

模块ConfigProto

创建session时常用的配置参数,使用tf.ConfigProto进行参数配置

with tf.Graph().as_default():

    gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.4)

    sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options,log_device_placement=True))

    with sess.as_default():

        print "example"

tf.ConfigProto()的参数

log_device_placement=True 是否打印设备分配日志

allow_soft_placement=True 如果指定的设备不存在,允许TF自动分配设备

gpu_options = tf.GPUOptions() 控制GPU资源

tf.GPUOptions() 参数

使用allow_growth参数,开始分配少量GPU容量,然后按需慢慢的增加,由于不释放内存,所以会导致碎片

tf.GPUOptions(allow_growth = True)

设置每个GPU应该拿出多少容量给进程使用

gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.4)

GPU选择

方式一 CUDA_VISIBLE_DEVICES=0 python your.py  or   CUDA_VISIBLE_DEVICES=0,1 python your.py

方式二 os.environ['CUDA_VISIBLE_DEVICES'] = '0' #使用 GPU 0  or os.environ['CUDA_VISIBLE_DEVICES'] = '0,1' # 使用 GPU 0,1

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容