计算机并行程序设计的多种模型
时间:2012-2-26
并行程序设计具有多种模型,它为程序员提供了一幅透明的计算机硬件/软件系统视图.
1).共享变量模型,共享变量模型用限定作用范围和访问权限的办法,对进程寻址空间实行共享或限制,利用共享变量实现并行进程间通信,共享变量模型与传统的串行程序设计有许多相似之处,程序员只需关心程序中可并行进程,而无需关心进程间的数据交换问题,共享变量模型通常不用于集群系统.
2)消息传递模型.消息传递模型是指不同进程之间通过显式方法传递消息来相互通信,实现进程之间的数据交换,同步等.因此,程序员不仅仅要关心程序中可并行成分的划分,而且还需关心进程间的数据交换,消息传递模型具有灵活,高效的特点,适用于多种并行系统,如MPP系统,集群系统等.
3)数据并行模型,数据并行模型是指将数据分布于洞的处理单元,这些处理单元对分布数据执行相同的操作.数据并行程序使用预先分布好的数据集,去处操作之间进行数据交换操作.数据并行操作的同步是在编译而不是在运行时完成的,数据并行模型适用于SIMD系统
4)面向对象模型.面向对象模型是近几年随着面向对象技术的发展而提出的,它基于消息传递,但并行处理单位却是对象.在这种模型中,对象是动态建立和控制的,处理是通过发着客接收消息来完成,面向对象模型具有简洁灵活的特点,适合多种平台.