zoukankan      html  css  js  c++  java
  • TensorFlow中tf.ConfigProto()配置Sesion运算方式

    博主个人网站:https://chenzhen.online

    tf.configProto用于在创建Session的时候配置Session的运算方式,即使用GPU运算或CPU运算;

    1. tf.ConfigProto()中的基本参数:

    session_config = tf.ConfigProto(
        log_device_placement=True,
    	allow_soft_placement=True,
    	inter_op_parallelism_threads=0,
    	intra_op_parallelism_threads=0)
    
    sess = tf.Session(config=session_config)
    
    参数 用法
    log_device_placement=True 设置为True时,会打印出TensoFlow使用了哪种操作;
    allow_soft_placement=True 当运行设备不满足要求时,会自动分配GPU或CPU;
    inter_op_parallelism_threads=0 一个操作内部并行运算的线程数;
    intra_op_parallelism_threads=0 多个操作并行运算的线程数;

    2. tf.ConfigProto配置GPU

    2.1 判断TensorFlow是否能够使用GPU运算

    result = tf.test.is_built_with_cuda()
    print(result)
    

    2.2 两种方式配置使用具体哪块GPU

    # 方式一:在python程序中设置
    os.environ['CUDA_VISIBLE_DEVICES'] = '0'
    os.environ['CUDA_VISIBLE_DEVICES'] = '0, 1'
    
    
    # 方式二:在执行.py文件时,指定具体GPU块
    CUDA_VISIBLE_DEVICES=0,1 python test.py
    

    2.3 动态申请GPU显存

    session_config = tf.ConfigProto()  # 配置见第1节
    session_config.gpu_options.allow_growth = True  # 动态申请
    sess = tf.Session(config=session_config)
    

    2.4 限制GPU的使用率

    session_configsession_config = tf.ConfigProto()  # 配置见第1节
    session_config.gpu_options.per_process_gpu_memory_fraction = 0.4  # 占用40%显存
    session = tf.Session(config=session_config)
    

    Reference

  • 相关阅读:
    vue后台管理系统项目
    javascript面试题
    webpack学习
    js全局变量收集器
    Koa2框架token验证
    require.js使用
    Koa2中使用art-template模板和静态资源托管
    Koa2POST请求参数
    H5、C3、ES6的新特性
    H5视频播放
  • 原文地址:https://www.cnblogs.com/chenzhen0530/p/10623856.html
Copyright © 2011-2022 走看看