用Java初始化的多线程Matrix

时间:2016-03-08 23:15:19

标签: java multithreading optimization matrix

目前使用JAMA矩阵。

我的程序当前初始化了很多小矩阵(大小为20x20),然后进行一些小的计算并读取结果。

大约80%的运行时间用于读取和初始化矩阵,我想知道是否有一种方法可以实现这种多线程以提高速度。 (我知道像OjAlgo这样的东西非常适合多重矩阵操作)但我所做的只是初始化矩阵并再次读取它们。

如果我使用另一个Matrix包,它会用多个线程初始化矩阵,还是初始化仍然是单线程的,但是algorthems是多线程的?

1 个答案:

答案 0 :(得分:0)

多线程"内部"对于这样小的矩阵,矩阵不会有任何好处。

切换到内部使用double []而不是double [] []的库可能会有所不同,但我的猜测是你应该关注你如何(重新)使用矩阵。也许你的程序逻辑可以是多线程的。

对于非常小的矩阵(2x2,3x3,4x4 ......),一些库具有专门的数据结构和算法,可以显着加快速度。