日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

异构计算分析

發(fā)布時間:2023/11/28 生活经验 59 豆豆
生活随笔 收集整理的這篇文章主要介紹了 异构计算分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

異構(gòu)計算分析

一. 基本概念

異構(gòu)計算技術(shù)從80年代中期產(chǎn)生,由于它能經(jīng)濟有效地獲取高性能計算能力、可擴展性好、計算資源利用率高、發(fā)展?jié)摿薮?#xff0c;已成為并行/分布計算領(lǐng)域中的研究熱點之一。

隨著通信和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,網(wǎng)絡(luò)計算概念應(yīng)運而生。同構(gòu)網(wǎng)絡(luò)計算系統(tǒng)now或cow首先興起,接著很快涌現(xiàn)出異構(gòu)網(wǎng)絡(luò)計算系統(tǒng),從而使異構(gòu)計算近年來成為并行/分布計算領(lǐng)域中的主要研究熱點之一。

人工智能有三要素:算法,計算力,數(shù)據(jù)。我們今天主要來講講計算力。

計算力歸根結(jié)底由底層芯片提供。按照計算芯片的組成方式,可以分成:

同構(gòu)計算:使用相同類型指令集和體系架構(gòu)的計算單元組成系統(tǒng)的計算方式。

異構(gòu)計算:使用不同類型指令集和體系架構(gòu)的計算單元組成系統(tǒng)的計算方式。常見的計算單元類別包括CPU、GPU、ASIC、FPGA等。

在異構(gòu)計算系統(tǒng)上進行的并行計算通常稱為異構(gòu)計算。人們已從不同角度對異構(gòu)計算進行定義,綜合起來我們給出如下定義:異構(gòu)計算是一種特殊形式的并行和分布式計算,它或是用能同時支持simd方式和mimd方式的單個獨立計算機,或是用由高速網(wǎng)絡(luò)互連的一組獨立計算機來完成計算任務(wù)。它能協(xié)調(diào)地使用性能、結(jié)構(gòu)各異地機器以滿足不同的計算需求,并使代碼(或代碼段)能以獲取最大總體性能方式來執(zhí)行。

概括來說,理想的異構(gòu)計算具有如下的一些要素:

(1)它所使用的計算資源具有多種類型的計算能力,如simd、mimd、向量、標量、專用等;
(2)它需要識別計算任務(wù)中各子任務(wù)的并行性需求類型;
(3)它需要使具有不同計算類型的計算資源能相互協(xié)調(diào)運行;
(4)它既要開發(fā)應(yīng)用問題中的并行性,更要開發(fā)應(yīng)用問題中的異構(gòu)性,即追求計算資源所具有的計算類型與它所執(zhí)行的任務(wù)(或子任務(wù))類型之間的匹配性;
(5)它追求的最終目標是使計算任務(wù)的執(zhí)行具有最短時間。

可見,異構(gòu)計算技術(shù)是一種使計算任務(wù)的并行性類型(代碼類型)與機器能有效支持的計算類型(即機器能力)最相匹配、最能充分利用各種計算資源的并行和分布計算技術(shù)。

二.CPU&GPU

  1. CPU  
      CPU(Central Processing Unit, 中央處理器)就是機器的“大腦”,也是布局謀略、發(fā)號施令、控制行動的“總司令官”。

CPU的結(jié)構(gòu)主要包括運算器(ALU, Arithmetic and Logic Unit)、控制單元(CU, Control Unit)、寄存器(Register)、高速緩存器(Cache)和它們之間通訊的數(shù)據(jù)、控制及狀態(tài)的總線。

簡單來說就是:計算單元、控制單元和存儲單元。


2. GPU

在正式講解GPU之前,我們先來講講上文中提到的一個概念——并行計算。

并行計算(Parallel Computing)是指同時使用多種計算資源解決計算問題的過程,是提高計算機系統(tǒng)計算速度和處理能力的一種有效手段。它的基本思想是用多個處理器來共同求解同一問題,即將被求解的問題分解成若干個部分,各部分均由一個獨立的處理機來并行計算。

并行計算可分為時間上的并行和空間上的并行。

時間上的并行是指流水線技術(shù),比如說工廠生產(chǎn)食品的時候分為四步:清洗-消毒-切割-包裝。

如果不采用流水線,一個食品完成上述四個步驟后,下一個食品才進行處理,耗時且影響效率。但是采用流水線技術(shù),就可以同時處理四個食品。這就是并行算法中的時間并行,在同一時間啟動兩個或兩個以上的操作,大大提高計算性能。

三.基本原理

1、異構(gòu)計算系統(tǒng)。

它主要由以下三部分組成:
(1)一組異構(gòu)機器。
(2)將各異構(gòu)機器連接起來的高速網(wǎng)絡(luò)。它可以是商品化網(wǎng)絡(luò),也可以是用戶專門設(shè)計的。
(3)相應(yīng)的異構(gòu)計算支撐軟件。

2、異構(gòu)計算的基本工作原理。

異構(gòu)計算需求在析取計算任務(wù)并行性類型基礎(chǔ)上,將具有相同類型的代碼段劃分到同一子任務(wù)中,然后根據(jù)不同并行性類型將各子任務(wù)分配到最適合執(zhí)行它的計算資源上加以執(zhí)行,達到使計算任務(wù)總的執(zhí)行時間為最小。下面通過一個簡單例子來說明異構(gòu)計算的基本工作原理。

假設(shè)在某一基準串行計算機上執(zhí)行某一給定計算任務(wù)的時間為ts,其中向量、mimd、simd以及sisd各類子任務(wù)所占執(zhí)行時間的百分比分別為30%、36%、24%和10%。假設(shè)某向量機執(zhí)行上述各類子任務(wù)相對于基準串行機的加速比分別為30、2、8和1.25,則在該向量機上執(zhí)行此任務(wù)所需的總時間為

tv=30%ts/30+36%ts/2+24%ts/8+10%ts/1.25=0.30ts,

故相應(yīng)的加速比為sv=ts/tv=ts/0.3ts=3.33

若上述向量機與其他的mimd機、simd機以及一臺高性能工作站(sisd型)構(gòu)成一個異構(gòu)計算系統(tǒng),并假設(shè)mimd機、simd機以及工作站執(zhí)行相匹配子任務(wù)的加速比分別為36、24和10,則在該異構(gòu)計算系統(tǒng)上執(zhí)行同樣任務(wù)所需時間就變?yōu)?/p>

thet=30%ts/30+36%ts/36+24%ts/24+10%ts/10+tc

其中tc為機器間交互開銷時間,假設(shè)需2%ts時間,則thet=0.06ts,從而相應(yīng)的加速比為shet=ts/0.06ts=16.67。

由上例可見,異構(gòu)計算系統(tǒng)可比同構(gòu)計算系統(tǒng)獲取高得多的加速比。這主要是因為同構(gòu)計算系統(tǒng)中的加速比只是靠并行性開發(fā)獲取的,而異構(gòu)計算系統(tǒng)中的加速比除了并行性之外,更主要的是靠開發(fā)異構(gòu)性獲得的(即不同類型子任務(wù)與相應(yīng)類型的計算資源相匹配),盡管此時會有相應(yīng)的交互開銷。交互開銷越小,異構(gòu)計算的優(yōu)越性就越加明顯。

3. 分類

異構(gòu)計算按以何種形式來提供計算類型多樣性,可分為系統(tǒng)異構(gòu)計算(shc-system heterogeneous computing)和網(wǎng)絡(luò)異構(gòu)計算(nhc-network heterogeneous computing)兩大類。shc以單機多處理器形式提供多種計算類型,而nhc則以網(wǎng)絡(luò)連接的多計算機形式提供多種計算類型。

根據(jù)異構(gòu)性實現(xiàn)方式不同,即是空間異構(gòu)性還是時間異構(gòu)性,shc和nhc各自又可進一步分為兩類。shc分為單機多計算方式和單機混合計算方式兩大類,前者在同一時刻允許以多種計算方式執(zhí)行任務(wù),后者在同一時刻只允許以一種計算方式執(zhí)行任務(wù),但在不同時刻計算可從一種方式自動切換到另一種方式,如simd和mimd方式間的切換。前者的實例有美國hughes研究實驗室和mit共同研制的圖像理解系統(tǒng)結(jié)構(gòu)(iua),它是多層異構(gòu)系統(tǒng)結(jié)構(gòu),按圖像理解層次要求設(shè)計每一層,低層是simd位串網(wǎng)絡(luò)(4096),用來處理像素級操作(如圖像增強),中層是由64個數(shù)字信號處理(dsp)芯片構(gòu)成的,以spmd或mimd(中粒度)方式執(zhí)行模式分類等操作,頂層是一個通用mimd(粗粒度)機器,完成場景和動作分析等知識處理操作。后者的實例為美國普渡大學(xué)研制的pasm系統(tǒng)原型,由16個pe(處理單元)組成的系統(tǒng),它們可動態(tài)地加以劃分以形成各種大小的獨立的混合方式子機器,執(zhí)行方式可按需要在simd和mimd之間自動切換。

nhc可進一步分為同類異型多機方式和異類混合多機方式兩類。同類異型多機方式中所使用的多機,它們的結(jié)構(gòu)屬同一類,即支持同一種并行性類型(如simd、mimd、向量等類型之一),但型號可能不同,因此性能可以各有差異。通常的now或cow為同類同型多機方式,因此可看成是同類異型多機方式中的特例。異類混合多機方式中所使用的多機,它們的結(jié)構(gòu)則屬不同類型。

4. 層次結(jié)構(gòu)

網(wǎng)絡(luò)異構(gòu)計算系統(tǒng)主要由一組異構(gòu)計算機、一個連接所有機器的高速網(wǎng)絡(luò)和一個并行編程環(huán)境所組成。邏輯上這種系統(tǒng)可分為三個層次:網(wǎng)絡(luò)層、通信層和處理層。如圖1所示。

網(wǎng)絡(luò)層主要用來連接在不同地點的計算機,如圖1中的計算站a和計算站b,并考慮其中消息傳遞的路由選擇、網(wǎng)絡(luò)流優(yōu)化和網(wǎng)絡(luò)排隊理論等問題,這與傳統(tǒng)的計算機網(wǎng)絡(luò)設(shè)計類似。

通信層工作于網(wǎng)絡(luò)層之上,主要為系統(tǒng)中各種不同的計算機提供能夠相互通信的機制。通信工具軟件應(yīng)提供使眾多異構(gòu)計算機集合可視為是一個單一的系統(tǒng)映像、單個虛擬異構(gòu)并行機的機制。這將方便用戶編程。這種通信工具通常提供一組原語來提供各種通信。典型流行的通信工具是pvm(并行虛擬機)和mpi(消息傳遞標準接口)。

處理層主要用來管理異構(gòu)機器組并保證任務(wù)的高效執(zhí)行。它所提供的主要服務(wù)包括編程環(huán)境和語言支持、應(yīng)用任務(wù)的類型分析和任務(wù)劃分、任務(wù)的映射與調(diào)度以及負載平衡等。

  1. 主要問題

異構(gòu)計算處理過程本質(zhì)上可分為三個階段:并行性檢測階段、并行性特征(類型)析取階段以及任務(wù)的映射和調(diào)度階段。并行性檢測不是異構(gòu)計算特有的,同構(gòu)計算也需要經(jīng)歷這一階段。可用并行和分布計算中的常規(guī)方法加以處理。并行性特征析取階段是異構(gòu)計算特有的,這一階段的主要工作是估計應(yīng)用中每個任務(wù)的計算類型參數(shù),包括映射及對任務(wù)間通信代價的考慮。任務(wù)映射和調(diào)度階段(也稱為資源分配階段)主要確定每個任務(wù)(或子任務(wù))應(yīng)映射哪臺機器上執(zhí)行以及何時開始執(zhí)行。

從用戶來看,上述的異步計算處理過程可用兩種方法來實現(xiàn)。第一種是用戶指導(dǎo)法,即由用戶用顯式的編譯器命令指導(dǎo)編譯器完成對應(yīng)用代碼類型分析及有關(guān)任務(wù)的分解等工作,這是一種顯式開發(fā)異構(gòu)性和并行性方法,較易于實現(xiàn),但對用戶有一定要求,需將異構(gòu)計算思想融入用戶程序中。另一種是編譯器指導(dǎo)法,需將異構(gòu)思想融入編譯器中,然后由具有“異構(gòu)智力”的編譯器自動完成應(yīng)用代碼類型分析、任務(wù)分解、任務(wù)映射及調(diào)度等工作,即實現(xiàn)自動異構(gòu)計算。這是一種隱式開發(fā)異構(gòu)性和并行性方法,是異構(gòu)計算追求的終極目標,但難度很大,對編譯器要求很高。

總結(jié)

以上是生活随笔為你收集整理的异构计算分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。