之前一直使用的3090跑pytorch代码,无事发生。但跑开源tensorlfow1.x代码的时候出现了问题,主要有两种情况:
- 有的代码报错:Blas GEMM launch failed
- 有的代码能正常运行,但加载十分缓慢,在跑起来之前大概能加载5分钟
因为使用tf.test.is_gpu_available()检查返回结果一直是True,一时让我搞不清楚遇到了什么问题。后来排查发现,3090不支持cuda10,cuda9等。虽然使用anaconda创建的环境安装tensorflow1.x的时候自动选择了cuda,但cuda和3090是不适配的。
目前解决方法主要有三种:
- 从源码自己编译tensorflow(因为没尝试过,就简要提一下)
- 利用官方针对A100编译的版本,Accelerating TensorFlow on NVIDIA A100 GPUs
- 使用官方提供的docker镜像(docker)
通过方法2我解决了问题,
主要运行以下两个命令
pip install nvidia-pyindex
pip install nvidia-tensorflow
参考的方法:
自己源码编译
利用官方编译的版本
docker版本安装