[多核并行计算]进程间通信-性能研究

 

首先介绍下多核并行计算的场景,及测试方法:

(1)并行计算运用在特定大型服务器之上,其硬件水平很高,可能有多几百到上千个cpu。

(2)这些cpu分成了2类,一类是控制cpu,作为主控,用于发起计算,与其他CPU交互,发起计算通知,分析并统计结果等作用;第二类是计算cpu(占大多数)。系统中绝大多数cpu属于计算cpu,因为整个系统就是为了高性能计算。由于计算量大,所以需要很多很多的cpu进行并行计算。每个cpu计算完后,将计算结果传回主控CPU。

(3)系统发起一次计算通知后,每个CPU核心会绑定一个进程开始进行实时运算。不同的CPU上运行着不同的实时进程,计算的通知和计算的结果,需要进程间通信,进行消息传递。并而且要求进程间通信的性能要足够的高,因为当cpu数量上涨到几百上千的时候,进程间通信的性能会影响到整个计算的结果收集。某些实时场景下,系统不允许某一次计算超期完成,这将导致整个业务的失败。

并行计算有知名的MPI库,如果不使用MPI,使用传统方式的linux IPC通信机制,比如管道,信号量,共享内存,消息队列等进程间通信方式。性能会是怎样的呢?下面对这几种IPC通信,进行性能研究。查看每种IPC之间的性能差距,及与MPI库做对比。形成性能分析报告。

首先采用管道方式来进行高性能密集并行计算。 

#include <stdio.h>
#include <stdlib.h>
#include <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值