☰
OpenBLAS error: Memory allocation still failed after 10 retries, giving up. OpenBL
2026/10/22 7:36:43 网站建设 项目流程

这个报错是 OpenBLAS 在初始化时尝试分配内存缓冲区,连续失败 10 次后放弃。结合你运行的 add_close_price.py 只做 Tushare 数据拉取和 pandas 处理,本身计算量很小,最可能的原因是 OpenBLAS 按 CPU 核心数预分配的线程缓冲区总大小超过了系统可用内存或提交限制。

直接解决办法
在运行脚本之前,先在 PowerShell 里设置环境变量,强制 OpenBLAS 只用 1 个线程:

$env:OPENBLAS_NUM_THREADS=1$env:OMP_NUM_THREADS=1

为什么这样做有效
OpenBLAS 会为每个 CPU 线程预先分配内存缓冲区。在 Windows 上,numpy 导入时 OpenBLAS 按核心数提交(commit)内存,而不只是保留(reserve)虚拟地址。如果你的机器核心数较多,或者系统本身可用内存/提交限制比较紧张,这个预分配就可能失败。设置 OPENBLAS_NUM_THREADS=1 会把缓冲区数量降到最低,从而绕过这个分配瓶颈。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询