《并行计算的编程模型》一1.11 总结

简介: 本节书摘来华章计算机《并行计算的编程模型》一书中的第1章 ,第1.11节, [(美)帕万·巴拉吉(Pavan Balaji)编著;张云泉等译,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.11 总结

MPI第一个版本发布距今已逾20多年了,在并行开发应用领域取得了巨大的成功,在大规模并行软件开发应用中占主导地位。
MPI成功的原因在于MPI为并行软件开发提供了健壮和完善的解决方案,并允许用户高效地实现大规模并行软件开发目标。MPI成功的具体原因可参考文献[129]。MPI定义的开放进程和避免了其他开放软件设计时所犯下的错误也是其成功的重要原因。同时,MPI为大规模并行应用提供专门的技术支持。很多软件基于MPI进行开发,软件开发者可以利用MPI开发高效和更高级的应用程序。一些基于MPI开发的软件获得了戈登贝尔奖和R & D 100奖[4,9,12,24,137]。
随着在超级计算机上运行的并行程序规模越来越大,人们常问“MPI是否支持百万核级并行计算?”。该问题答案是肯定的,只要认真按照MPI规范实现并行程序,MPI并行规模可以达到百万核级[23]。基于MPI的线程安全设计,MPI可以与其他编程方法混合使用。目前,开发人员已将MPI和OpenMP用来混合开发并行程序。混合使用MPI和OpenMP等其他编程方法,可支持百万个MPI进程同时运行,每个MPI进程可并发上千个线程。
关于MPI使用和开发,存在大量的参考文献,还有例如“EuroMPI年会”等相关国际会议。MPI使用手册可参考文献[127,128]。MPI官方标准版本参考网址www.mpi-forum.org。
第1章仅描述了MPI的部分特性,如有兴趣,可在网上通过搜索引擎查找MPI全部特性的介绍文档。

相关文章
|
存储 固态存储 关系型数据库
Apache Doris 系列: 入门篇-安装部署
Apache Doris 系列: 入门篇-安装部署
4168 0
|
Ubuntu Linux 数据安全/隐私保护
使用Cython库包对python的py文件(源码)进行加密,把python的.py文件生成.so文件并调用
本文介绍了在Linux系统(Ubuntu 18.04)下将Python源代码(`.py文件`)加密为`.so文件`的方法。首先安装必要的工具如`python3-dev`、`gcc`和`Cython`。然后通过`setup.py`脚本使用Cython将`.py文件`转化为`.so文件`,从而实现源代码的加密保护。文中详细描述了从编写源代码到生成及调用`.so文件`的具体步骤。此方法相较于转化为`.pyc文件`提供了更高的安全性。
1964 2
|
SQL 分布式计算 Hadoop
Spark分布式内存计算框架
Spark分布式内存计算框架
|
数据可视化 Python
pycallgraph,一个好用的 Python 代码可视化库!
pycallgraph,一个好用的 Python 代码可视化库!
1286 7
|
存储 Java 大数据
Apache Arrow 新手上路
# 什么是Arrow [Apache Arrow](https://https://arrow.apache.org/)是一个开源的跨平台数据层开发框架,主要提供高效的、硬件加速的内存中数据计算能力。Apache Arrow的设计初衷是作为“新一代大数据系统的共享基础”,可以作为不同系统之间进行高效数据交换的媒介,同时提供快速、低延迟的数据访问接口。 Apache Arrow的主要目标是通过提
Apache Arrow 新手上路
|
存储 Kubernetes druid
【Druid】(四)Apache Druid 部署和配置(单机版 / Docker 容器版 / Kubernetes 集群版)1
【Druid】(四)Apache Druid 部署和配置(单机版 / Docker 容器版 / Kubernetes 集群版)1
2148 0
【Druid】(四)Apache Druid 部署和配置(单机版 / Docker 容器版 / Kubernetes 集群版)1
|
存储 分布式计算 监控
【Druid】(一)Apache Druid 基本介绍
【Druid】(一)Apache Druid 基本介绍
2911 0
【Druid】(一)Apache Druid 基本介绍
|
SQL 资源调度 分布式计算
pyspark提交作业到yarn集群一些问题总结
pyspark提交job到yarn集群一些问题总结
|
SQL JSON 大数据
大数据OLAP Kylin3.0RESTful API query查询接口改造
大数据OLAP Kylin3.0RESTful API query查询接口改造
453 0