以前在配置theano环境的时候,只按照教程往./theanorc里面添加了几行内容,现在又踩坑了,所以就查了下文档。
theano的config模块包含了许多属性来定义theano的动作。改变theano配置有三种方式:按照优先级依次为:
theano.config.property
赋值THEANO_FLAGS
修改./theanorc
可以通过print函数查看你现在的配置
python -c ‘import theano; print(theano.config)’ | less
通过THEANO_FLAGS来改变配置,
THEANO_FLAGS=’floatX=float32,device=cuda0,lib.cnmem=1’ python .py
通过修改./theanorc来改变配置,在linux下面是$HOME/.theanorc。
如下配置
[global]
floatX = float32
device = cuda0
[lib]
cnmem = 1
直接使用的参数需要配置在global下面如device,mode。其他子模块下面需要配置在相应的部分。如[nvcc] [dnn.conv]
lib.cnmem控制CNMem的使用,0-1之间的float值,表示最开始就占用的显存比例
cuda.root cuda环境的路径,一般为/usr/local/cuda
dnn.enabled 使用cuDNN加速计算。