0

我目前在Matlab中有几个算法,我正在用Java编码。我将使用下列其中一种(Colt,Apache Commons Math,jblas)。但是,由于我真的希望改进这些算法的速度,因此我正在寻找建议,希望现有的实现可以并行化这些算法以提高性能。Java中的分布式矩阵乘法

从我所知道的来看,Hadoop不是分布矩阵操作的好选择。我也看过Mahout,但我不清楚这是否有助于实现这一目标。

非常感谢您的提示和建议。

回答

0

你从哪里得到Hadoop“不是分布矩阵操作的好选择”的信息?这当然是一个不错的选择,但只要你的数据很大 - 至少50GB +。如果你可以把它放在内存中,Hadoop并不是一个好的选择,但是如果你认为你需要在多个TB数据上使用它,那么Hadoop就是一个很好的工具。在优化矩阵乘法时还有很多其他事情需要考虑,比如数据的结构(它是否稀疏?是否发生在集群中?等等)。

关于在MapReduce上实现矩阵乘法的谷歌有很多信息 - 如果您选择此路线,Jeffrey Ullman的book可能是一个很好的开始。