keras 或 tensorflow 调用GPU报错:Blas GEMM launch failed
2024-10-19 13:36:37
GPU版的tensorflow在模型训练时遇到Blas GEMM launch failed错误,或者keras遇到相同错误(keras 一般将tensorflow作为backend,如果安装了GPU版本的tensorflow,那么在使用keras时会优先使用GPU),类似报错如下:
InternalError (see above for traceback): Blas GEMM launch failed : a.shape=(300, 1), b.shape=(1, 10), m=300, n=10, k=1
这是调用GPU时,显存分配遇到了问题。比较保险的方式是在模型训练之前为tensorflow或者keras分配显存空间,tensorflow就用如下语句创建session
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333)
sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
而keras就在引入keras时进行参数设置:
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session
config = tf.ConfigProto()
config.gpu_options.allocator_type = 'BFC' #A "Best-fit with coalescing" algorithm, simplified from a version of dlmalloc.
config.gpu_options.per_process_gpu_memory_fraction = 0.3
config.gpu_options.allow_growth = True
set_session(tf.Session(config=config))
如果使用ipython notebook,做完上述设置后可能出现GPU sync failed,重启一下就应该没问题了。
摘自: https://blog.csdn.net/Leo_Xu06/article/details/82023330
自己了试了tensorflow的有用,记录一下
最新文章
- java封装性之private
- OB函数
- 【MySQL】探究之null与not null
- 用正则验证字符串格式,形如:A)XXX B)XXXX C)XXX
- 查看用户的SQL执行历史
- pymol编译
- libpq中调用prepared statement:
- iOS便捷开发工具分享
- 诺心(LECAKE) | 氪加
- hibernate+spring的整合思路加实例(配图解)
- 随机生成器、thread(暂停)、清屏定义
- JavaScript2谁刚开始学习应该知道4最佳实践文章(翻译)
- 学习笔记——迭代器模式Iterator
- 【翻译】了解Ext JS 5的小部件
- cocoa编程第4版 8.6 挑战2 解答
- PHP生成腾讯云COS请求签名
- GoLang simple-project-demo-02
- Codeforces 1139F Dish Shopping 树状数组套平衡树 || 平衡树
- 05C++引用
- JMeter学习(二十四)HTTP属性管理器HTTP Cookie Manager、HTTP Request Defaults(转载)