分布式程序设计语言的并行性支持
时间:2012-2-28
把分布式应用程序分成若干部分并分配到多个处理机上同时运行,这就是所谓并行性,而平等性支持主要指语言增设了一些并行性表示和处理分配等方面的设施,并行性的控制分为显式和隐式的两种.所谓并行性的显式控制是指程序员可以显式地把分布式应用程序划分为若干并行段并可指派到一些处理机上执行,而隐式控制则指的是由编译系统而不是程序员控制的,.通常,无论是显式还是隐式的,所分配的均应是逻辑的处理机,而从逻辑的处理机到物理的处理机的变换通常是由操作系统完成的,若平等段到某个处理机的分配是在运行以前就确定的.则称静态分配,若在运行时才能确定的,则称动态分配.
分布式程序设计语言表示并行性的方法有多种,表示并行性的语言并行单位,在顺序程序设计语言中是整个程序,但在分布式程序设计语言中,并行单位可以是进程,对象,语句表达式和子句,并行单位的选择应考虑分布式应用程序本身具有的并行性粒度,当并行段具有大计算且相互间为低耦合时,则称这个分布式应用程序具有粗料度并行性.反之,当并行段具有小计算机且相互间紧耦合时,则称这个分布育龄 有细粒度度行性.通常,通信代价越大,并行的粒度就应该越大,通信代价较低则可支持较细粒度的并行性.值得注意的是,常 常在高通信代价的远程网络中,细粒度并行性的通信代价可以抵消并计算机得到的好处.