👋
Welcome
to
Cuterwrite 's
Blog
本文是关于 RDMA 技术及其编程方法的指导。文章主要介绍了 libibverbs 的简介和 Verbs API 的详解,包括 Verbs 对象创建层次和两个动态库。此外,还介绍了 Connection Manager 的建立过程和抽象类型 RDMACM。最后,文章通过解析被动方和主动方的 RDMACM 程序,以及基于 RDMA 的 client-server 程序的实战,来帮助读者更好地理解和应用 RDMA 技术。
本文介绍了 RDMA(Remote Direct Memory Access)技术的基本概念和工作原理。首先,简要介绍了 RDMA 技术的背景和定义。接着,详细解释了 RDMA 工作原理中的几个重要概念,包括 Infiband 与以太网的对比、QRs/WRs 执行模型、通信语义和传输服务。此外,还介绍了 RDMA 架构的层级结构。然后,介绍了 Verbs 与 OFA Verbs API,包括 Verbs 的简介和 OFA Verbs API 对应用的支持。最后,对本文进行了总结。通过本文的阅读,读者可以了解 RDMA 技术的基本概念和工作原理,以及 Verbs 与 OFA Verbs API 的应用。
MPI 论坛在 1994 年推出的 MPI 基础上,根据 MPI 的发展和要求,于 1997 年推出了 MPI 的最新版本 MPI-2,同时原来的 MPI 更名为 MPI-1。相对于 MPI-1,MPI-2 加入了许多新特性:动态进程管理、I/O、远程存储访问等。本文将对 MPI-2 的新特性进行简要介绍。
数据类型是 MPI 中的一个重要概念,它可以帮助我们更好地管理数据,提高通信效率。在 MPI 中,数据类型的概念与 C 语言中的数据类型有所不同,它是一种抽象的数据结构,可以用来描述数据的组织形式,而不是数据本身。本文将介绍 MPI 中的数据类型,包括基本数据类型、派生数据类型、类型创建函数等。
集合通信是进程集合里的所有进程进行数据交换的同时操作,实现了一对多,多对一,全体对全体的数据交换。本文深入讨论了一对多通信如广播和散播,多对一通信如收集,以及如何聚合所有进程的数据。然后,本文介绍了如何进行同步以确保所有进程在相同的执行点进行数据交换。接着,本文介绍了规约,一种特殊的集合通信操作,它将所有进程的数据聚合并进行运算,得出一个单一结果。总的来说,本文为读者提供了关于 MPI 集合通信的深入解析,包括其定义、功能和几种主要的通信模式。