paddlepaddle_gpu自从2.1.3之后,在一些linux环境中部署总会报错。paddle的cpu版本并不会报错。
--------------------------------------
C++ Traceback (most recent call last):
--------------------------------------
No stack trace in paddle, may be caused by external reasons.
----------------------
Error Message Summary:
----------------------
FatalError: `Segmentation fault` is detected by the operating system.
[TimeInfo: *** Aborted at 1705995937 (unix time) try "date -d @1705995937" if you are using GNU date ***]
[SignalInfo: *** SIGSEGV (@0x0) received by PID 452 (TID 0x7f71fd8d1740) from PID 0 ***]
Segmentation fault (core dumped)
所有依赖paddle GPU版本的包,都会有这个问题,比如paddlespeech,这时候不显示具体信息,只会报错:
Segmentation fault (core dumped)
解决方法就是在Linux控制台输入:
export LD_LIBRARY_PATH=/usr/bin/python3/lib:$PATH
这行代码的意思就是配置LD_LIBRARY_PATH这个环境变量,这是临时配置,关闭控制台后就失效了,需要长久生效的配置需要自己改配置表。
如果仅仅是配置环境变量的话,我们本来也可以在python的代码中使用os模块配置:
import os
os.environ['LD_LIBRARY_PATH'] += '/usr/bin/python3/lib:$PATH'
但是,经过我的实验,python代码中配置,依然会报错。
我主要是参考了这两个博客,我简化了指令。
在九天毕昇平台运行paddle出现fatal error: ‘Segmentation fault‘ is detected by the operating system_fatalerror: `segmentation fault` is detected by th-CSDN博客