C++ 基于MPI的聚类主成分分析

C++ 基于MPI的聚类主成分分析,c++,math,cluster-analysis,C++,Math,Cluster Analysis,我正在设置一组计算机,在其中运行MPI上的数学程序。 你知道是否有一些库使用MPI进行PCA-主成分分析,以便使用联网PC的所有资源? 我会看看Scalapack,但是你知道其他库吗? 我的语言是Linux上的C++,但是如果有一个好的LIB,Windows也是一样的 感谢PCA是一种相当便宜的操作,因此您的通信(向节点获取数据)与计算(实际操作,这里是PCA)的比率可能相对较低 这意味着集群可能不是解决这个特定问题的好办法 此外,PCA实际上是一个线性代数运算,因此您最好查看优化的BLAS,如

我正在设置一组计算机,在其中运行MPI上的数学程序。 你知道是否有一些库使用MPI进行PCA-主成分分析,以便使用联网PC的所有资源? 我会看看Scalapack,但是你知道其他库吗? 我的语言是Linux上的C++,但是如果有一个好的LIB,Windows也是一样的
感谢

PCA是一种相当便宜的操作,因此您的通信(向节点获取数据)与计算(实际操作,这里是PCA)的比率可能相对较低

这意味着集群可能不是解决这个特定问题的好办法

此外,PCA实际上是一个线性代数运算,因此您最好查看优化的BLAS,如ATLAS、Goto、MKL等。。。它(现在)可以利用多个内核,提供隐式并行,比使用MPI的显式并行更容易使用

别误会,我真的很喜欢MPI(还有一些教程)
但您需要记住,并非所有工具都适用于所有问题

谢谢你的回复。我能再问你一个简单的问题吗?当我有大量的数据时,你认为这同样适用吗?我需要处理40000个向量,每个向量的大小为12GB。我现在需要学习你在回复中提到的东西。。很抱歉…每个节点上有多少Ram?每一个都适合记忆吗?如果是这样,您可以使用Atlas、MKL。。。对每一个进行PCA,同时使用MPI发送多个矩阵,以处理数据并行部分。