前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开源框架MXNet | 环境变量配置(显存)

开源框架MXNet | 环境变量配置(显存)

作者头像
深度学习思考者
发布2018-01-02 20:34:47
1.3K0
发布2018-01-02 20:34:47
举报

一般情况下,不需要修改有关环境变量的配置。但是一些特殊情况,需要修改的,就涉及到以下这些内容了: 在linux上最简单的修改方式就是export MXNET_GPU_WORKER_NTHREADS=3

一 设置进程数量

  • MXNET_GPU_WORKER_NTHREADS 这个参数用来在一块卡上并行计算,在每一块GPU上最大的进程数,默认值为2
  • MXNET_GPU_COPY_NTHREADS 在每个GPU上执行内存复制作业的并发线程的最大数量,默认值1
  • MXNET_CPU_WORKER_NTHREADS
  • MXNET_CPU_PRIORITY_NTHREADS
  • MXNET_CPU_NNPACK_NTHREADS

二 显存选项

  • MXNET_EXEC_ENABLE_INPLACE 默认值:true
  • NNVM_EXEC_MATCH_RANGE 默认值:16
  • MXNET_EXEC_NUM_TEMP 默认值:1 将此设置为一个小数目可以节省GPU内存。它也可能会降低并行度,这通常是可以接受的。
  • MXNET_GPU_MEM_POOL_RESERVE 默认值:5 If you see a strange out-of-memory error from the kernel launch, after multiple iterations, try setting this to a larger value.

三 Memonger

  • MXNET_BACKWARD_DO_MIRROR 默认值:0,可选0或1 MXNet 使用镜像概念来节省内存。用于训练阶段来节省设备内存,当设置为1 的时候,在前向传播的时候会复制某些层的fp,反向传播的时候会重新计算这些数据。 MXNET_BACKWARD_DO_MIRROR=1 将会节省30%~50%的显存, 保存95%的运行速度。

四 控制数据通信

  • MXNET_KVSTORE_REDUCTION_NTHREADS 默认值:4 用于总结大数组的CPU线程数。
  • MXNET_KVSTORE_BIGARRAY_BOUND
  • MXNET_ENABLE_GPU_P2P

更多配置信息:

http://mxnet.incubator.apache.org/how_to/env_var.html

五 Mxnet恢复训练

Mxnet可以通过断点恢复训练,命令如下:

python train_end2end.py --network resnet --gpu 0 --resume --begin_epoch 10 --end_epoch 15 --lr_step 15
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年11月08日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一 设置进程数量
  • 二 显存选项
  • 三 Memonger
  • 四 控制数据通信
  • 五 Mxnet恢复训练
相关产品与服务
GPU 云服务器
GPU 云服务器(Cloud GPU Service,GPU)是提供 GPU 算力的弹性计算服务,具有超强的并行计算能力,作为 IaaS 层的尖兵利器,服务于深度学习训练、科学计算、图形图像处理、视频编解码等场景。腾讯云随时提供触手可得的算力,有效缓解您的计算压力,提升业务效率与竞争力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档