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

关于scipy.optimize.minimize并行及全核利用的技术咨询

关于scipy.optimize.minimize(BFGS)的并行化问题

我使用scipy.optimize.minimize并指定method="BFGS"时,遇到了如下现象:理论上该函数在计算代价函数或数值梯度时似乎并未做并行化处理,但在8核Apple M1的Macbook Air上运行优化时,通过top命令观测到CPU使用率达750%-790%,所有8核均被占用;而在单节点40核的超级计算机上运行时,CPU使用率仅为100%-200%,仅用到2核。

现提出以下问题:

  • 问题1:scipy.optimize.minimize在计算代价函数/数值梯度时是否会采用并行化?
  • 问题2:若支持并行化,如何让scipy.optimize.minimize利用全部核心?

最小可复现示例代码

# 随机对称矩阵变分泛函的基础优化

import numpy as np
from numpy.random import uniform
from scipy.optimize import minimize

# 生成随机对称矩阵,用于计算最小特征值
N = 1000
H = uniform(-1, 1, [N,N])
H = H + H.T

# 变分代价函数
def cost(x):
    return (x @ H @ x) / (x @ x)

x0 = uniform(-0.1, 0.1, N)

# 使用BFGS最小化变分函数
minimize(cost, x0, method='BFGS')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 01:02:04