You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何导入NumPy会创建线程?测试案例及现象说明

为什么导入NumPy会创建多个线程?
  • NumPy底层依赖的数学计算库(如OpenBLAS、MKL等)默认启用多线程优化,目的是充分利用CPU多核资源加速数值计算。当导入NumPy时,它会初始化这些底层库,而这些库会提前创建多个线程池,为后续的并行计算任务做准备。
  • 你看到的24条线程记录,实际是这些底层计算库创建的线程,并非NumPy自身直接创建。不同的计算后端(比如MKL的默认线程数和CPU核心数相关,OpenBLAS也有独立的线程数配置)会导致线程数量有所差异。
  • 如果不需要NumPy启用多线程,可以通过设置环境变量来控制:
    • 针对OpenBLAS:export OMP_NUM_THREADS=1 或 export OPENBLAS_NUM_THREADS=1
    • 针对MKL:export MKL_NUM_THREADS=1
      设置后再运行Python脚本,线程数就会减少到1条,和未导入NumPy时的状态一致。

内容的提问来源于stack exchange,提问作者PaleNeutron

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 16:57:05