Skip to main content
QUICK REVIEW

[论文解读] Performance Comparison of MPICH and MPI4py on Raspberry Pi-3B Beowulf Cluster

Saad Wazir, Ataul Aziz Ikram|arXiv (Cornell University)|Nov 9, 2019
Parallel Computing and Optimization Techniques参考文献 11被引用 9
一句话总结

本文评估了在低成本 Raspberry Pi-3B Beowulf 集群上使用 MPICH 和 MPI4py 进行并行计算任务的性能表现。通过蒙特卡洛模拟估算 π 值和生成质数,作者证明了在利用并行计算时,该集群的性能优于配备 6500 核 Intel i7 的高端系统,凸显了通用硬件在 HPC 教育与实验中的成本效益优势。

ABSTRACT

Moore's Law is running out. Instead of making powerful computer by increasing number of transistor now we are moving toward Parallelism. Beowulf cluster means cluster of any Commodity hardware. Our Cluster works exactly similar to current day's supercomputers. The motivation is to create a small sized, cheap device on which students and researchers can get hands on experience. There is a master node, which interacts with user and all other nodes are slave nodes. Load is equally divided among all nodes and they send their results to master. Master combines those results and show the final output to the user. For communication between nodes we have created a network over Ethernet. We are using MPI4py, which a Python based implantation of Message Passing Interface (MPI) and MPICH which also an open source implementation of MPI and allows us to code in C, C++ and Fortran. MPI is a standard for writing codes for such clusters. We have written parallel programs of Monte Carlo's Simulation for finding value of pi and prime number generator in Python and C++ making use of MPI4py and MPICH respectively. We have also written sequential programs applying same algorithms in Python. Then we compared the time it takes to run them on cluster in parallel and in sequential on a computer having 6500 core i7 Intel processor. It is found that making use of parallelism; we were able to outperform an expensive computer which costs much more than our cluster.

研究动机与目标

  • 评估 MPICH 与 MPI4py 在低成本通用硬件 Beowulf 集群上的性能表现。
  • 为学生和研究人员提供一个可访问且经济实惠的平台,以获得并行计算的实践经验。
  • 比较在集群上与高端商用处理器上,计算密集型算法的并行与串行实现的执行时间差异。
  • 证明在廉价硬件上实现并行计算,可超越昂贵单体系统的性能表现。

提出的方法

  • 使用八个通过以太网连接的 Raspberry Pi-3B 节点构建 Beowulf 集群,其中一台指定为主节点,其余为从节点。
  • 使用 MPI4py 在 Python 中实现并行程序,使用 MPICH 在 C++ 中实现并行程序,用于蒙特卡洛模拟估算 π 值和质数生成。
  • 开发了相同算法的串行版本,用于在 Python 中进行性能基准测试。
  • 测量在集群和 6500 核 Intel i7 处理器上,对并行与串行运行的执行时间。
  • 使用标准的 MPI 通信模式在节点间分发工作负载并聚合结果。
  • 基于与高端 CPU 上串行执行相比的加速比和效率来评估性能表现。

实验结果

研究问题

  • RQ1在 Raspberry Pi-3B Beowulf 集群上运行并行应用程序时,MPI4py 与 MPICH 的性能表现如何比较?
  • RQ2低成本通用硬件集群在并行计算任务中,能在多大程度上超越高端商用处理器的性能?
  • RQ3与在高性能单核系统上执行串行程序相比,使用 Beowulf 集群进行并行化能实现多大的加速比?
  • RQ4Raspberry Pi 集群作为教学并行与分布式计算概念的教育工具,其有效性如何?

主要发现

  • 在运行蒙特卡洛模拟和质数生成算法的并行实现时,Raspberry Pi-3B Beowulf 集群的性能优于 6500 核 Intel i7 处理器。
  • 与在高端 CPU 上的串行执行相比,该集群上的并行执行显著缩短了计算时间,表现出显著的加速效果。
  • MPI4py 和 MPICH 均能有效实现负载分配和节点间通信,性能结果表明实现方式的选择对整体结果影响甚微。
  • 本研究证实,通过合理并行化,通用硬件可实现与传统高性能系统相当的性能,且成本仅为后者的极小部分。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。