Java 的 N 维数组并行计算

Parallel computing in N-Dimensional Arrays for Java

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

不确定 "parallel computing" 是什么意思,我们主要在 c/c++ 中实现,但也支持 cuda 和 mkl,以及电源芯片。

由于您的问题很广泛,我只能假设您并不是真的在寻找 "deep" 这个问题的答案,但我可以告诉您,我们有您期望的流行语,例如 openmp , blas/lapack, 稀疏,..

所以稍微编辑一下我的答案:"vectorized" 的 Numpy 操作只是用于 c 中的循环。 Python 本质上有慢循环并且在很大程度上是一种慢语言。

另一个编辑:如果没有埋藏在其中的大量 C 代码,我们实际上不可能支持 GPU。如果没有 JNI,我们也不能做 blas。 Nd4j 绝对不是一个纯粹的 java 库。

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

所以是的:在那个效果中我们有 "c++ based for loops" 是的。 for 循环是多线程的或 "parallelized" 使用 cuda 和 openmp/mkl.