摘要:
基于都志辉老师MPI编程书中的第15章内容。 通信域是MPI的重要概念:MPI的通信在通信域的控制和维护下进行 → 所有MPI通信任务都直接或间接用到通信域这一参数 → 对通信域的重组和划分可以方便实现任务的划分 (1)通信域(communicator)是一个综合的通信概念。其包括上下文(conte 阅读全文
摘要:
基于都志辉老师《MPI并行程序设计模式》第14章内容。 前面接触到的MPI发送的数据类型都是连续型的数据。非连续类型的数据,MPI也可以发送,但是需要预先处理,大概有两类方法: (1)用户自定义新的数据类型,又称派生类型(类似定义结构体类型,但是比结构体复杂,需要考虑<类型,偏移量>两方面的内容) 阅读全文
摘要:
相关章节:第13章组通信MPI程序设计。 MPI组通信与点到点通信的一个重要区别就是:组通信需要特定组内所有成员参与,而点对点通信只涉及到发送方和接收方。 由于需要组内所有成员参与,因此也是一种比较复杂的通信方式。程序员在设计组通信语句的时候,需要同时考虑两点: a. 程序运行起来之后,当前正在运行 阅读全文
摘要:
一个不错的英文的MPI教程:http://mpitutorial.com 中科大的MPI学习资料:http://micro.ustc.edu.cn/Linux/MPI/ 清华大学的并行计算资料:http://202.197.191.206:8080/06/# 阅读全文
摘要:
这一章讲了MPI非阻塞通信的原理和一些函数接口,最后再用非阻塞通信方式实现Jacobi迭代,记录学习中的一些知识。 (1)阻塞通信与非阻塞通信 阻塞通信调用时,整个程序只能执行通信相关的内容,而无法执行计算相关的内容; 非阻塞调用的初衷是尽量让通信和计算重叠进行,提高程序整体执行效率。 整体对比见下 阅读全文
摘要:
学习了MPI四种通信模式 及其函数用法: (1)标准通信模式:MPI_SEND (2)缓存通信模式:MPI_BSEND (3)同步通信模式:MPI_SSEND (4)就绪通信模式:MPI_RSEND 四种通信模式的区别都在消息发送端,而消息接收端的操作都是MPI_RECV。 1.标准通信模式 原理图 阅读全文
摘要:
这里的内容主要是都志辉老师《高性能计算之并行编程技术——MPI并行程序设计》书上有一些代码是FORTAN的,我在学习的过程中,将其都转换成C的代码,便于统一记录。这章内容分为两个部分:MPI对等模式程序例子 & MPI主从模式程序例子1. 对等模式MPI程序设计1.1 问题背景这部分以Jacobi迭... 阅读全文
摘要:
有了apue的基础,再看mpi程序多进程通信就稍微容易了一些,以下几个简单程序来自都志辉老师的那本MPI的书的第七章。现在ubuntu上配置了一下mpich的环境:http://www.cnblogs.com/liyanwei/archive/2010/04/26/1721142.html注意,为了... 阅读全文
摘要:
把自己之前几篇学习多线程知识的文章合成一篇,目的是方便离线保存。(一)从demo开始主要参考了下面这个视频内容(https://www.youtube.com/watch?v=fcHngVr4y7M)需FQ。代码如下:#include #include #include using namespac... 阅读全文
摘要:
17.1 Introduction这一章主要讲了UNIX Domain Sockets这样的进程间通讯方式,并列举了具体的几个例子。17.2 UNIX Domain Sockets这是一种特殊socket类型,主要用于高效的IPC,特点主要在于高效(因为省去了很多与数据无关的格式的要求)。int s... 阅读全文