可能配置过一次深度学习或类似的环境,就会对深度学习完全失去热情吧。
我最近在做毕业设计,任务是去复刻某个深度学习,然后再改进一些。本来我以为会是个挺轻松的任务,没想到光安环境就能折腾我这么久。
我用的是谷歌的 colab ,好像不管怎么弄,cuda 的环境都改不动,就算我卸载了,也还是 11.8 。 就很奇怪,要被 cuda 折磨疯了。
下面给出原代码给出的环境,各位觉得这个配置存在问题吗?或者有更简单的安装环境的方法吗?
PyTorch version: 1.8.0
CUDA version: 11.1
cudnn version: 8005
GPU: Tesla V100-SXM2-32GB
requirements.txt
matplotlib==3.4.2
pynvml==11.0.0
torchvision==0.8.0
pandas==1.3.2
numpy==1.20.3
imbalanced_learn==0.8.0
tqdm==4.62.1
torch==1.7.0
fairseq==0.10.2
transformers==4.10.2
imblearn==0.0
librosa==0.8.1
Pillow==8.3.2
pysndfx==0.3.6
scikit_learn==1.0
1
nightwitch 202 天前 via Android
11.8 和 11.1 理论上是兼容的,所以问题在哪里
|
2
ruxuan1306 202 天前 ![]() 注意选择 Github 或 Hugging Face 上正儿八经的、工程水平较高的、有预训练检查点或 Cobab 实例的深度学习项目。
因为绝大多数搞炼丹的研究生都是臭鱼烂虾,开源代码仓库主要是为了忽悠审稿人,不说结果能不能复现,就依赖列表都不一定准确。 |
![]() |
3
allegory 202 天前
11.6 以上的 cuda 对应的 torch 版本不是 1.7 吧 至少得 1.13.0cu+116
|
![]() |
4
allegory 202 天前
你安装 torch 的时候一定要用官网给的那个命令,并且选择正确的版本和工具。PS 不推荐 conda. conda 就 tm 一坑 b
|
![]() |
5
Muniesa 202 天前 via Android
pytorch 兼容性很好,不写奇奇怪怪的代码一般升级都不会有问题,直接拿 colab 已有的环境跑一下试试
|
6
lbingl 202 天前 via Android
你这项目用的是 v100 ,colab 跑不动的,不用试了,换 kaggle 没准能跑动。不用换 cuda 环境,torch 也应该不用换,直接跑,报缺什么包再安装什么就行。
|
7
chesha1 202 天前
首先 CUDA 有两个版本,一个普通 CUDA 驱动,一个 CUDA toolkit ,你看看是不是搞混了
另外就是版本不严格兼容也是可以的,不像 tensorflow 那么坑 另外建议把报错发上来看看,光说环境有问题我们也不清楚问题在哪啊 |
8
0attocs 202 天前
`torch==1.7.0` 改成 `torch==1.7.0+cu110`, 这是 1.7.0+cuda11 的唯一一个 whl ,参见 https://download.pytorch.org/whl/torch/
你也可以选一个更新的 torch ,一般都没问题,就是不过 torchvision 接口不太稳定,不同版本可能有坑。 |
9
0attocs 202 天前
仔细看了下,上面环境写的是 torch 1.8.0 + cuda 11.1 ,但下面 requirements.txt 写的是 cuda==1.7.0 。改成 torch==1.8.0+cu111 就可以了,这个 whl 是存在的。
|
10
vthe OP 谢谢各位,我这才明白原来环境不用一模一样,直接跑就是了。然后的话只安装了一个 transformers 就可以跑了。我之前其实也跑通过,但是一分钟不到 colab 就崩溃了,所以我以为环境一定要大概相同才能跑。
然后刚才直接跑了一下,还是一分钟不到就崩溃了。 warning 信息只有 ``` 2023-03-14 02:02:56.805401: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX2 FMA To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags. 2023-03-14 02:03:00.821268: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/lib64-nvidia 2023-03-14 02:03:00.822404: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/lib64-nvidia 2023-03-14 02:03:00.822449: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly. ``` 然后关于显卡的话,由于之前 colab 崩溃,我也以为是显卡配置。我问过我的导师,他说 T4 足够了。 |
11
lonewolfakela 202 天前
你崩溃了,但是只有 warning ,没有 error ?
|
12
vthe OP @lonewolfakela 是的,这个 warning 好像也是不用管的。所以我现在就是觉得,要么 colab 12G 的显存不够用,要么就是环境的问题。
|
14
vthe OP 各位好,请问一个大小为 4 到 5g 的数据集,一个小时能够跑完吗?
我打算去租个大点显存的显卡,看一下到底是环境的问题还是配置不够。 |
15
vthe OP 大概率是解决了这个问题,我去显卡租赁平台租了个 P100 还是 V100,16G 内存,程序果然可以跑起来了。
但还是不够用,这次的提示很明显,cuda 的内存不够了。由于不会调参数,只能用更高性能的显卡去试了。 或者按网上的一些优化,试着把 batch_size 从 64 调到 32 ,只是不知道影响大不大。任重道远! |