请问dolphindb如何对数百万个两元一次方程组的增广矩阵求解

一元二次方程组 1. Ax + By + C =0;2.A`x+B`y+C`=0

目前已经有有A,B,C,A`,B`,C`向量,要求输出对应的解x和y,难道只能用python sumpy的库逐个遍历求解吗,最近用for 循环几百上千万条数据 太折磨人了,时间太长了。


简单来说,就是高效率对数百万个两元一次方程组的增广矩阵求解

请先 登录 后评论

2 个回答

wale

没有,这个具体用于什么应用场景?

请先 登录 后评论
xlli

可以使用each代替for循环,单线程求解,会比for循环快。

inputList = take([matrix([1, 2], [3, 4])], 5000000) outputList = take([[7, 10]], 5000000) timer res = each(solve{,}, inputList, outputList)

也有并行的peach方法,但单个任务耗时比较短,用peach无法提升性能。

性能对比:

inputList = take([matrix([1, 2], [3, 4])], 5000000)
outputList = take([[7, 10]], 5000000)

timer res1 = each(solve{,}, inputList, outputList)
// 4.3s
timer {
    res2 = []
    for(i in 0:5000000) {
        res2.append!(solve(inputList[i], outputList[i]))
    }
}
// 5.7s



请先 登录 后评论
  • 2 关注
  • 0 收藏,709 浏览
  • yiar 提出于 2023-05-01 01:33

相似问题