![并行计算:分布式系统与多核处理器?](https://linux22.com/image/580554/%E5%B9%B6%E8%A1%8C%E8%AE%A1%E7%AE%97%EF%BC%9A%E5%88%86%E5%B8%83%E5%BC%8F%E7%B3%BB%E7%BB%9F%E4%B8%8E%E5%A4%9A%E6%A0%B8%E5%A4%84%E7%90%86%E5%99%A8%EF%BC%9F.png)
我只是想知道,既然我们可以创建每台支持数百或数千个核心/CPU(甚至 GPGPU)的单独机器,那么为什么需要费尽心思创建分布式系统来进行大规模并行处理呢?
所以基本上,为什么要通过机器网络进行并行处理,而不用在一台支持多核的机器上以更低的成本和更可靠的方式完成呢?
答案1
所以基本上,为什么要通过机器网络进行并行处理,而不用在一台支持多核的机器上以更低的成本和更可靠的方式完成呢?
你应该在以下情况下通过机器网络进行并行处理:不能可以在支持多核的一台机器上以更低的成本和更高的可靠性完成。
很快就会出现需要多个处理器(远远超过单个主板的处理能力)来处理计算的情况。除此之外,还有一个最佳功耗与处理增益之间的平衡点,这通常出现在较慢的处理器中。一组 Xeon 7500 处理器消耗大量电量,而性能较低的 CPU 可能能够以 1/3 的功率完成一半的处理,因此扩展性要好得多。
还有单点故障的概念。你愿意让一台设备导致计算完全停止吗?另一种方法是拥有多个节点甚至多个数据中心,这样可以更好地应对灾难。
答案2
成本:一台服务器上有数千个核心,而低端 x86 服务器则有几台。
可靠性:一台服务器而不是多台服务器。