《并行计算的编程模型》一1.1 引言

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

第1章

Programming Models for Parallel Computing
消息传递接口
William D. Gropp,伊利诺伊大学厄巴纳–香槟分校
Rajeev Thakur,阿贡国家实验室

1.1 引言

在使用分布式内存编程模型的并行程序中,MPI是一个标准和可移植的通信接口。MPI既为并行通信提供丰富的函数接口,也为并行文件I/O访问等提供函数接口。同时,MPI也支持多程序多数据(MPMD)编程模型。MPI是一种基于库的系统,而非编译器或者编程语言。MPI库函数通过C和Fortran语言实现。MPI指由函数名、参数、语义构成的专门的函数接口,而非特定的函数实现。MPI论坛负责定义和制定MPI,该论坛由大量来自工业、学术、研究实验室等机构的专家和用户组成。目前,高性能MPI库已在各种计算平台(例如笔记本、台式机、服务器、集群、商业化的高性能计算机)和操作系统上得到应用,从而更加方便地在各种计算平台上实现高性能和可移植的并行程序。因此,在并行科学应用领域,MPI成为应用最广泛的编程接口。
MPI背景
1992年,人们开始尝试为消息传递定义一种独立和标准化的接口。当时,许多应用程序编程接口是不同且无法移植的,例如计算机厂商提供的编程接口(Intel NX [232]、IBM EUI [119]、Thinking Machines CMMD [272]、nCUBE [207])和其他研究库(PVM [121]、p4 [51]、Chameleon [130]、Zipcode [254])。采用上述编程接口开发的应用程序无法在不同的机器上运行或者高效运行。如果一家计算机厂家倒闭,基于该厂家提供的编程接口开发的应用程序将无法运行。应用程序编程接口的多样性阻碍了应用程序开发。因此,需要人们为应用程序开发定义一种独立和标准化的接口。
1994年,MPI发布了第一个版本(MPI-1)。它包含基本的消息传递特性,例如点对点通信、聚合通信、数据类型和非阻塞式通信。1997年,MPI论坛发布了MPI的第二个主要版本(MPI-2)。MPI-2对MPI-1进行了扩展,增加了单边通信、并行I/O和动态进程等特性。2012年,发布了MPI的第三个主要版本(MPI-3)。MPI-3包含非阻塞聚合通信、相邻聚合通信等新特性,并对单边通信接口进行了大量扩展。在本章中,我们将介绍这些新的特性。

相关文章
|
Linux
Pytest----CentOS7安装配置allure
Pytest----CentOS7安装配置allure
1212 0
Pytest----CentOS7安装配置allure
|
10月前
|
人工智能 JavaScript 搜索推荐
宜搭融合 DeepSeek R1 满血版!手把手教你玩转低代码 AI 产品
AI技术的迅猛发展,特别是DeepSeek的推出,为企业带来了前所未有的智能化体验。当低代码平台与AI技术结合时,迸发出丰富的应用场景。本文详细介绍如何通过宜搭平台使用DeepSeek,涵盖网页版、AI助理版、AI生成组件、连接器等功能,帮助用户轻松实现智能化业务系统。
1698 7
宜搭融合 DeepSeek R1 满血版!手把手教你玩转低代码 AI 产品
|
机器学习/深度学习 人工智能 自然语言处理
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
阿里云人工智能平台 PAI 团队发表的图像编辑算法论文在 MM2024 上正式亮相发表。ACM MM(ACM国际多媒体会议)是国际多媒体领域的顶级会议,旨在为研究人员、工程师和行业专家提供一个交流平台,以展示在多媒体领域的最新研究成果、技术进展和应用案例。其主题涵盖了图像处理、视频分析、音频处理、社交媒体和多媒体系统等广泛领域。此次入选标志着阿里云人工智能平台 PAI 在图像编辑算法方面的研究获得了学术界的充分认可。
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
|
Docker Python Windows
pycharm使用fastapi/uvicorn无法reload的问题
这篇文章讨论了在PyCharm中使用FastAPI和uvicorn时遇到的无法快速重载的问题,并提供了包括降级uvicorn版本和使用命令行运行等解决方法。
pycharm使用fastapi/uvicorn无法reload的问题
|
弹性计算 人工智能 网络协议
揭秘!CIPU最新秘密武器–弹性RDMA的技术解析与实践
弹性RDMA(Elastic Remote Direct Memory Access,简称eRDMA),是阿里云自研的云上弹性RDMA网络,底层链路复用VPC网络,采用全栈自研的拥塞控制CC(Congestion Control )算法,兼具传统RDMA网络高吞吐、低延迟特性,同时支持秒级的大规模RDMA组网。基于弹性RDMA,开发者可以将HPC应用软件部署在云上,获取成本更低、弹性更好的高性能应用集群;也可以将VPC网络替换成弹性RDMA网络,加速应用性能。
揭秘!CIPU最新秘密武器–弹性RDMA的技术解析与实践
|
机器学习/深度学习 PyTorch 算法框架/工具
深度学习实践篇 第八章:torchscript
简要介绍torchscript的使用方法。
507 0