linux运行sklearn出现cannot allocate memory in static TLS block
时间: 2024-05-10 20:21:07 浏览: 207
编译时virtual memory exhausted Cannot allocate memory 内存增加.docx
5星 · 资源好评率100%
这个问题通常是由于进程的地址空间不够而导致的。解决办法是增加地址空间限制。
可以通过以下命令来查看当前地址空间限制:
```
ulimit -a
```
如果看到以下输出:
```
stack size (kbytes, -s) 8192
```
那么可以通过以下命令来增加地址空间限制:
```
ulimit -s unlimited
```
如果还是无法解决问题,可以尝试在程序运行前加上以下环境变量:
```
export LD_PRELOAD=/lib/x86_64-linux-gnu/libpthread.so.0
```
如果还是无法解决问题,可以尝试适当减小数据集的大小,或者使用更高配置的机器。
阅读全文