郭福洲
摘 要:步入信息高速快车的时代,基于MPI的并行计算是解决物联网、图像处理获取数据,人工智能处理数据的重要途径之一;同时也是MIMD(多指令多机)并行计算实现高效、高速目标的重要策略与方法。笔者从MPI(Message-Passing-Interface 消息传递接口)一个跨语言的通信协议机制,通过Linux或Windows操作系统平台,以C++语言平台为基础,论述并行计算实现几种方法。
关键词:MPI 并行计算 算法 进程 消息 通信
中图分类号:TP301 文献标识码:A
Abstract: In the era of information high-speed train, MPI-based parallel computing is one of the important ways to solve the Internet of Things, image processing to obtain data, and artificial intelligence to process data; It is also an important strategy and method for MIMD (multiple instruction multiple machine) parallel computing to achieve high efficiency and high speed. Starting from MPI (Message-Passing-Interface), a cross-language communication protocol mechanism, through Linux or Windows operating system platform, based on the C++ language platform, the author discusses several ways to realize parallel computing.
Key Words: MPI; Parallel computing; Algorithm; Process; Message; Communication
1 并行計算发展的背景
经历几十年来电子信息产业的软硬件相互倒逼、促进与发展,人类在许多领域(如:空间气象与遥感、图像处理与捕捉、物联网、人工智能、虚拟现实等)发展迅猛。但随着人类在科学领域对信息与数据处理数量规模与速度的要求更高,对数据处理、信息交换与传输效能、速度也在不断地增加,并行计算[1]与分布式系统调度等新型算法与程控策略也更加日新月异。硬件搭台(基础),软件唱戏(调度与并行计算编程),从硬件实现并行计算基础层面来看:以网络系统支撑重要结点――计算机为标志,单机性能大幅度提升的主要举措有:日益增加的集成电路晶体管密度、将提升信息传递速度增快与集成电路的散热能力已经达到极致,发展多核处理器;从软件实现并行编程与计算层面来看:着力编写任务并行和数据并行的程序,以期更大程度上利用多核处理器将有待解决的问题分解成的任务与数据科学分配并均衡到各个核上完成。……