-1

库 ND4J(Java 的 N 维数组)是否支持并行计算,就像 Python 的 numpy 一样?

4

1 回答 1

0

不知道你所说的“并行计算”是什么意思,我们主要是用 c/c++ 实现的,但也支持 cuda 和 mkl,以及电源芯片。

由于您的问题非常广泛,我只能假设您并不是真的在寻找这个问题的“深度”答案,但我可以告诉您,我们有您期望的流行语,例如 openmp、blas/lapack、sparse、 ..

所以稍微编辑一下我的答案:“矢量化”的 Numpy 操作只是 c 中的循环。Python 固有地具有慢循环,并且在很大程度上是一种慢语言。

另一个编辑:如果那里没有大量的 c 代码,我们就不可能支持 gpus。如果没有 JNI,我们也无法做 blas。Nd4j 绝对不是纯 java 库。

我们在以下位置运行所有真正的逻辑:https ://github.com/deeplearning4j/libnd4j

所以是的:在这种情况下,我们有“基于 c++ 的 for 循环”是的。for 循环是多线程的或使用 cuda 和 openmp/mkl “并行化”的。

于 2017-09-16T20:13:41.913 回答