Networking 折叠:在多台计算机/网络上运行的算法如何比超级计算机更快完成?

Networking 折叠:在多台计算机/网络上运行的算法如何比超级计算机更快完成?,networking,distributed-computing,folding,supercomputers,Networking,Distributed Computing,Folding,Supercomputers,我特别感兴趣的是,为什么跨多个网络将数据传输到多台计算机,然后再传输回来的开销不会大大降低计算过程的速度,以至于一台超级计算机不会彻底消除分布式系统的计算速度。对你的标题的简单回答-它不能。只要超级计算机和独立计算机具有相似的原始计算能力,超级计算机的互连速度将提高40-400倍 现在假设你不能得到一台完整的超级计算机来进行计算(至少在学术界是这样),而只能得到10个节点。但您知道如何将算法并行化以在100个节点上运行,商品服务器或从Amazon租用的VM可能会更快 正如您所指出的,这里的线索是

我特别感兴趣的是,为什么跨多个网络将数据传输到多台计算机,然后再传输回来的开销不会大大降低计算过程的速度,以至于一台超级计算机不会彻底消除分布式系统的计算速度。

对你的标题的简单回答-它不能。只要超级计算机和独立计算机具有相似的原始计算能力,超级计算机的互连速度将提高40-400倍

现在假设你不能得到一台完整的超级计算机来进行计算(至少在学术界是这样),而只能得到10个节点。但您知道如何将算法并行化以在100个节点上运行,商品服务器或从Amazon租用的VM可能会更快

正如您所指出的,这里的线索是优化网络流量。这从简单地压缩发送的数据开始(GZip压缩),然后发送需要大量计算的小任务定义结束,而这些任务定义反过来只能生成一个简短的答案

例如,您可以发送一个矩阵或矩阵的一部分,任务是找到该矩阵的排列以适合特定条件。现在矩阵的大小是
n
(发送的数据甚至可以被压缩以使其更小),但在最坏的情况下计算将花费
n

能够像这样把问题分解成小规模的和平SETI@Home达到平均600万亿次的速度。(来源)。另一方面,拥有这种计算能力的超级计算机将花费1000多万美元)


澄清一下,我不知道怎么做SETI@Home在工作中,我提供的矩阵排列只是作为发送少量数据的示例,但需要进行长时间的计算。

我的问题与获取/设置超级计算机与分布式系统无关。我的问题是,分布式系统怎么可能比超级计算机执行计算更快。谁说它更快?