我要努力工作,加油!

使用PyTorch版的yolov5训练时,出现Error in `python'

		发表于: 2020-08-06 08:23:00 | 已被阅读: 31 | 分类于: PyTorch基础
		

一切准备妥当,运行训练命令时,出现下面这个错误:

Error in `python': double free or corruption (!prev)

这可能与我使用的训练机器系统版本(ubuntu14.04)较低有关,相关的库可能不能匹配较新的程序。执行下面的命令:

$ sudo apt-get install libtcmalloc-minimal4
$ export LD_PRELOAD="/usr/lib/libtcmalloc_minimal.so.4"

问题解决。

详细讨论可以参考这里

如果不添加上面的库到 LD_PRELAOD,可能还会出现下面这样的错误:

Error in `python': free(): invalid pointer: 0x00000000020663b

但是添加后,虽然可以暂时正常训练,但是在一个 epoch结束时,又出现了下面这样的错误:

src/tcmalloc.cc:277] Attempt to free invalid pointer

此时可以尝试将 utils/dataset.py 中的 Dataloader 的 drop_last 参数设置为 True。