python mpi多线程_Python使用MPI实现分布式计算(mpi4py)

本文介绍了如何使用Python的mpi4py库进行并行计算,包括在Linux和Windows环境下安装mpi4py,解决编译问题,以及通过mpi4py将现有Python程序并行化的实例。通过MPI实现的并行计算可扩展至多节点分布式计算,适用于大规模参数化任务。
摘要由CSDN通过智能技术生成

并行计算

多年以前,计算机的主频还是MHz级别制程还是微米级别的时候,CPU每次更新换代都会带来巨大提升,可以通过提升电子工艺的方式以及提升主频的方式提高计算速度。单机计算能力在那个时代大刀阔斧向前走。科学计算的规模也随着计算能力的提升逐渐升级。计算能力的提升也带来了很多学科的兴起和繁荣,比如计算物理。

直到主频到了GHz量级,传统工艺已经触碰到经典物理的天花板,再提高主频缩小原件的话就会出现无法预料的不确定性。

然而,科学计算的需求还在日渐提升。对计算能力的强烈需求让学者找到了另外一个突破口:大规模并行。

这就提到了MPI

MPI

MPI (Message Passing Interface)是一套标准,在很长一段时间里我都错误地以为它是一个软件,或者是一个语言(因为总听学长同事说装MPI编MPI程序)。事实上它是一套并行运算中信息传递和处理的标准,在这个标准之上,编程者可以很方便地组织自己的并行程序。

这套标准有很多种实现,比如C++,Fortran,Python的mpi4py,Matlab-MPI等等。在这些程序中调用响应的库来实现程序的并行化。

这其中,Fortran,C++ 开发效率太低,Python我个人非常喜欢

以及在我所在的天文领域,Python正在占领全局。

开发迅速,可以很快速的把算法转化成程序,并投入计算。带上Numba,pycuda,pytorch等工具的加速,速度也很快。

这里试图用集群并行的方法加速并行化在单机优化了很久的Pyth

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值