并行計算(Parallel Computing)是指同時使用多種計算資源解決計算問題的過程。為執(zhí)行并行計算,計算資源應(yīng)包括一臺配有多處理機(并行處理)的計算機、一個與網(wǎng)絡(luò)相連的計算機專有編號,或者兩者結(jié)合使用。并行計算的主要目的是快速解決大型且復(fù)雜的計算問題。此外還包括:利用非本地資源,節(jié)約成本。
為利用并行計算,通常計算問題表現(xiàn)為以下特征:
(1)將工作分離成離散部分,有助于同時解決;
(2)隨時并及時地執(zhí)行多個程序指令;
(3)多計算資源下解決問題的耗時要少于單個計算資源下的耗時。
并行計算是相對于串行計算來說的,所謂并行計算分為時間上的并行和空間上的并行。 時間上的并行就是指流水線技術(shù),而空間上的并行則是指用多個處理器并發(fā)的執(zhí)行計算。
并行計算科學(xué)中主要研究的是空間上的并行問題。從程序和算法設(shè)計人員的角度來看,并行計算又可分為數(shù)據(jù)并行和任務(wù)并行。一般來說,因為數(shù)據(jù)并行主要是將一個大任務(wù)化解成相同的各個子任務(wù),比任務(wù)并行要容易處理。
云計算是在并行計算之后產(chǎn)生的概念,是由并行計算發(fā)展而來, 兩者在很多方面有著共性。學(xué)習(xí)并行計算對于理解云計算有很大的幫助。并行計算是學(xué)習(xí)云計算必須要學(xué)習(xí)的基礎(chǔ)課程。
但并行計算不等于云計算,云計算也不等同并行計算。兩者區(qū)別如下。
(1)云計算萌芽于并行計算;
(2)并行計算、網(wǎng)格計算只用于特定的科學(xué)領(lǐng)域,專業(yè)的用戶;
(3)并行計算追求的高性能;
(4)云計算對于單節(jié)點的計算能力要求低