《高性能計算之并行編程技術(shù)-MPI并行程序設(shè)計》
都志輝
李三立
陳渝 劉鵬
第1章 并行計算機(jī)
采用并行計算的優(yōu)點:加快速度,節(jié)省投入,打破物理極限的約束。
按指令與數(shù)據(jù)劃分:
SIMD單指令多數(shù)據(jù)并行計算機(jī),MIMD多指令多數(shù)據(jù)并行計算機(jī)
SIMD計算機(jī)同時用相同的指令對不同的數(shù)據(jù)進(jìn)行操作,數(shù)組或向量運(yùn)算特別適合在SIMD并行計算機(jī)上執(zhí)行.
MIMD計算機(jī)同時有多條指令對不同的數(shù)據(jù)進(jìn)行操作.
SPMD(Single-ProgramMultuple-Data)單程序多數(shù)據(jù)并行計算機(jī),MPMD(Multiple-ProgramMultiple-Data)多程序多數(shù)據(jù)并行計算機(jī)
一般地,SPMD并行計算機(jī)是由多個地位相同的計算機(jī)或處理器組成的;而MPMD并行計算機(jī)內(nèi)計算機(jī)或處理器的地位
是不同的,根據(jù)分工的不同,它們擅長完成的工作也不同,因此可以根據(jù)需要將不同的程序(任務(wù))放到MPMD并行計算機(jī)上執(zhí)行,使得這些程序協(xié)調(diào)一致地完成給定的工作.
按存儲方式劃分:
共享內(nèi)存和[]分布式內(nèi)存是兩種基本的并行計算機(jī)存儲方式。除此之外,分布式共享內(nèi)存也是一種越來越重要的并行計算機(jī)存儲方式。
共享內(nèi)存的并行計算機(jī):各個處理單元通過對共享內(nèi)存的訪問來交換信息、協(xié)調(diào)各處理器對并行任務(wù)的處理。對這種共享內(nèi)存的編程,實現(xiàn)起來相對簡單,但共享內(nèi)存往往成為性能特別是擴(kuò)展性的重要瓶頸。
分布式內(nèi)存的并行計算機(jī):各個處理單元都擁有自己獨立的局部存儲器,由于不存在公共可用的存儲單元,因此各個處理器之間通過消息傳遞來交換信息、協(xié)調(diào)和控制各個處理器的執(zhí)行,這是本書介紹的消息傳遞并行編程模型所面對的并行計算機(jī)的存儲方式。不難看出,通信對分布式內(nèi)存并行計算機(jī)的性能有重要的影響,復(fù)雜的消息傳遞語句的編寫成為在這種并行計算機(jī)上進(jìn)行并行程序設(shè)計的難點所在。但是,對于這種類型的并行計算機(jī),由
于它有很好的擴(kuò)展性和很高的性能,它的應(yīng)用非常廣泛。
分布式共享內(nèi)存的并行計算機(jī):結(jié)合了前兩者的特點,是當(dāng)今新一代并行計算機(jī)的一種重要發(fā)展方向,對于目前越來越流行的機(jī)群計算(ClusterComputing)大多采用這種形式的結(jié)構(gòu)。通過提高一個局部結(jié)點內(nèi)的計算能力使它成為所謂的“超結(jié)點”不僅提高了整個系統(tǒng)的計算能力,而且可以提高系統(tǒng)的模塊性和擴(kuò)展性,有利于快速構(gòu)造超大型的計算系統(tǒng)。

愛華網(wǎng)



