并行计算有三个层次。进程级并行:通过网络连接在不同计算节点之间传送数据,内存不共享。线程级并行:共享内存。线程内并行:向量化指令级并行。
并行编程的基本方法就是分解和协调。数据由大划小,任务量接近,计算冗余少。通过通信、同步和任务调度协调子问题。基本原则是平衡和压榨,平衡不同计算节点的负载,尽量发挥每一个节点的计算性能。
进程级并行通过消息传递实现进程交互,依赖于网络连接(例如交换机),内存不共享。存在与存储系统的协作,例如数据会在GPU上进行计算。任务调度的任务是将任务映射到不同的处理器上,消息传递和同步都是串行程序之外的开销。
MPI是一个API,全程Message Passing Interface,定义了消息传递操作和聚合操作。
标签:并行,笔记,MPI,并行计算,计算,消息传递,任务调度 From: https://www.cnblogs.com/zhaoke271828/p/16994969.html