-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Cannot load any more object with static TLS while executing crnn_ctc on multi-devices #1360
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
一个解决方案是:编译的时候关闭mkldnn相关的选项,因为mkldnn相关的库也会占用大量static TLS |
建议将mkldnn放在platform/dynload下。 |
Duplicate of #3007 |
可以用readelf –l XXX.so 查看一下1.5 release so里program header的TLS:
Mkldnn/mklml动态库里都只有32字节的TLS;Paddle inference库则有0x14b0=5296字节的TLS。 |
求问这个是咋解决的? |
任务10连跪。。 |
目前唯一的解决办法是编译源码安装paddle,编译时把MKL选项关掉: https://github.com/PaddlePaddle/Paddle/blob/develop/CMakeLists.txt#L65 继续探索更科学的解决办法... |
Check TLS memory size of libwarpctc.soFind
Use
There is no TLS in program headers. So we should check all the
0x0000000000000064 (100bytes) TLS is necessary for loading libwarpctc.so. Check TLS occupied by mkl library
0x0000000000000058(88bytes) TLS is occupied by mkl library. Check TLS occupied by paddle framework
Analyse TLS in core_avx.so:
|
@bingyanghuang Could you help see it? |
Error log:
The text was updated successfully, but these errors were encountered: