日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀]隨著GPU的可編程性不斷增強,GPU的應用能力已經遠遠超出了圖形渲染任務,利用GPU完成通用計算的研究逐漸活躍起來,將GPU用于圖形渲染以外領域的計算成為GPGPU(General Purpose compuTIng on graphics processing units,基于GPU的通用計算)。而與此同時CPU則遇到了一些障礙,CPU為了追求通用性,將其中大部分晶體管主要用于構建控制電路(比如分支預測等)和Cache,只有少部分的晶體管來完成實際的運算工作。

隨著GPU的可編程性不斷增強,GPU的應用能力已經遠遠超出了圖形渲染任務,利用GPU完成通用計算的研究逐漸活躍起來,將GPU用于圖形渲染以外領域的計算成為GPGPU(General Purpose compuTIng on graphics processing units,基于GPU的通用計算)。而與此同時CPU則遇到了一些障礙,CPU為了追求通用性,將其中大部分晶體管主要用于構建控制電路(比如分支預測等)和Cache,只有少部分的晶體管來完成實際的運算工作。

CPU + GPU 是一個強大的組合,因為 CPU 包含幾個專為串行處理而優(yōu)化的核心,而 GPU 則由數(shù)以千計更小、更節(jié)能的核心組成,這些核心專為提供強勁的并行性能而設計。程序的串行部分在 CPU 上運行,而并行部分則在 GPU上運行。GPU 已經發(fā)展到成熟階段,可輕松執(zhí)行現(xiàn)實生活中的各種應用程序,而且程序運行速度已遠遠超過使用多核系統(tǒng)時的情形。未來計算架構將是并行核心 GPU 與多核 CPU 共同運行的混合型系統(tǒng)。

一、CPU多核轉到GPU并行化(適合算術密集型)

雖然GPU并不適用于所有問題的求解,但是我們發(fā)現(xiàn)那些對運算力量耗費巨大的科學命題都具備天然的“”特色。這類程序在運行時擁有極高的運算密度、并發(fā)線程數(shù)量和頻繁地存儲器訪問,無論是在音頻處理、視覺仿真還是到分子動力學模擬和金融風險評估領域都有大量涉及。這種問題如果能夠順利遷移到GPU為主的運算環(huán)境中,將為我們帶來更高效的解決方案。

傳統(tǒng)意義上的GPU不善于運行分支代碼,但是ATI和NVIDIA經過長期改進其內部架構已經使得GPU可以較為高效地運行分支、循環(huán)等復雜代碼。同時因為GPU屬于并行機范疇,相同的運算可以應用到每個數(shù)據(jù)元素的時候,它們可以達到最好的性能。在CPU編程環(huán)境中,寫出每個輸入數(shù)據(jù)元素有不同數(shù)量的輸入的程序很容易,但在GPU這種并行機上還是有不少麻煩。

通用的數(shù)據(jù)結構正是GPU編程的最大困難之一。CPU程序員經常使用的數(shù)據(jù)結構如列表和樹在GPU身上并不容易實現(xiàn)。GPU目前還不允許任意存儲器訪問,而且GPU運算單元的設計為主要操作是在表現(xiàn)位置和顏色的四維向量上。

不過這些并不能阻擋GPU編程的加速發(fā)展,因為GPU不是真的為通用計算而設計的,需要一些努力才能讓GPU高速地服務通用計算程序。這些努力前些年是程序員而單獨實現(xiàn)的,而隨著ATI和NVIDIA開始看到高性能計算市場的硬件需求,我們看到無論是Fermi架構添加全能二級緩存和統(tǒng)一定址還是RV870架構不斷優(yōu)化LDS并放大并發(fā)線程數(shù),這些都是GPU自身硬件體系為了適應未來的運算環(huán)境而做出的變革。

二、并行化編程優(yōu)點

在GPU并行編程過程中,OpenCL是一個不錯的選擇。OpenCL是Open CompuTIng Language(開放式計算語言)的簡稱,它是第一個為異構系統(tǒng)的通用并行編程而產生的統(tǒng)一的、免費的標準。OpenCL支持由多核的CPU、GPU、Cell類型架構以及信號處理器(DSP)等其他的并行設備組成的異構系統(tǒng)。OpenCL的出現(xiàn),使得軟件開發(fā)人員編寫高性能服務器、桌面計算系統(tǒng)以及手持設備的代碼變得更加快捷。OpenCL由用于編寫內核程序的語言和定義并控制平臺的API組成,提供了基于任務和基于數(shù)據(jù)的兩種并行計算機制,使得GPU的計算不在僅僅局限于圖形領域,而能夠進行更多的并行計算。但是,如果通過傳統(tǒng)的方法開發(fā)一個能夠運行在異構平臺(在CPU和GPU的平臺)的程序是很難的。不同的廠商,不同的產品型號的GPU一般有著不一樣的架構,這樣要想開發(fā)出一款能夠高效的能夠運用不同平臺的所有計算資源的軟件是很難的。OpenCL的出現(xiàn)有效地解決了異構平臺的問題。

OpenCL規(guī)范是由Khronos Group推出的,OpenCL程序不僅僅可以運行在多核的CPU上,也可以在GPU上進行執(zhí)行,這充分體現(xiàn)了OpenCL的跨平臺性和可移植性,也讓編程人員可以充分利用GPU的強大的并行計算能力,相對于CPU來說,GPU存在很多特點。

l GPU擁有的核心的數(shù)量要比高端CPU的核心數(shù)量多很多。雖然GPU的每個運算核心沒有CPU的每個運算核心工作頻率高,但是GPU的總體性能-芯片面積比以及性能-功耗比比CPU高很多,所以在處理越多線程的并行計算的任務性能高很多。

l GPU能夠通過大量并行線程之間的交織運行隱藏全局的延遲,除此之外GPU還擁有大量的寄存器、局部存儲器和cache等用來提升外部存儲的訪問性能。

l 在傳統(tǒng)的CPU運算中,線程之間的切換是需要很大的開銷的,所以在開啟了大量線程的算法的效率是很低的。但是,在GPU中,線程之間的切換是很廉價的。

l GPU的計算能力比CPU強很多。

三、OpenCL環(huán)境下并行化編程

OpenCL是一個開放的工業(yè)標準,它可以為CPU和GPU等不同的設備組成的異構平臺進行編程。OpenCL是一種語言,也是一個為并行編程而提供的框架,編程人員可以利用OpenCL編寫出一個能夠在GPU上執(zhí)行的通用程序。

OpenCL的技術核心包好了下面的四種模型:

l 平臺模型(Platform Model):OpenCL平臺模型定義了主機和設備的角色,為程序員寫在設備上執(zhí)行的OpenCL C函數(shù)(內核)提供了一個抽象的硬件模型。平臺模型確定了主機上的處理器能夠協(xié)調執(zhí)行,而且存在一個或者多個處理器能夠執(zhí)行OpenCL C代碼(設備)。

l 執(zhí)行模型(Execution Model):定義如何在主機上配置OpenCL環(huán)境以及內核(kernel)是如何在設備上執(zhí)行的。這其中包括在主機上設置OpenCL上下文,提供主機和設備交互的機制,定義了內核在設備上執(zhí)行的兵法模式。

l 內存模型(Memory Model):定義了內核使用的抽象的內存層次。

l 編程模型(Programming Model):定義了并發(fā)模型如何讓映射到物理硬件。

OpenCL框架被分成平臺層API和運行時API,平臺層API允許應用查詢平臺和設備,而且可以通過上下文來管理它們。運行時的API利用上下文去管理設備上的內核的執(zhí)行。

四、OpenCL并行化調試工具

在利用OpenCL進行編程之后,我們可以使用gDEBugger進行調試,gDEBugger是一個高級的OpenCL和OpenGL調試器,分析器和內存分析器。它可以完成其他工具無法完成的工作:追蹤在OpenCL和OpenGL之上的應用程序的活動,并發(fā)現(xiàn)系統(tǒng)實現(xiàn)的內部發(fā)生了什么。

程序員可以在以下的情況下使用gDEBugger

l 優(yōu)化OpenCL和OpenGL應用程序性能。

l 快速找到與OpenCL和OpenGL相關的bug。

l 改善程序性能和魯棒性

五、CPU和GPU共享記憶體空間

在過去的時間,雖然GPU和CPU已整合到同一個晶片上(GPGPU技術),但是晶片在運算時要定位記憶體的位置仍然得經過繁雜的步驟,這是因為CPU和GPU的記憶體池仍然是獨立運作。之前為了解決兩者記憶體池獨立的運算問題,當CPU程式需要在GPU上進行部分運算時,CPU都必須從CPU的記憶體上復制所有的資料到GPU的記憶體上,而當GPU上的運算完成時,這些資料還得再復制回到CPU記憶體上。這些步驟都會不斷耗費時間以及程式處理的效能。2012年,AMD就攜手ARM、高通、三星、聯(lián)發(fā)科等廠商成立HSA(Heterogeneous Systems Architecture)基金會,希望拓展CPU和GPU協(xié)同運算的新架構,并輔助此架構發(fā)展的異質運算新軟體開發(fā)環(huán)境。

日前,AMD進一步公開說明此運算架構的新技術:hUMA(heterogeneous Uniform Memory Access)。透過hUMA,CPU和GPU能共享同一個記憶體空間,并且CPU能夠直接存取GPU的記憶體位址,不必像過去得花工夫再將GPU的運算資料復寫到CPU上。近日,在HotChips會議上,AMD連續(xù)公布了桌面FX處理器使用的Steamroller架構、面向低功耗平臺的Jaguar架構等,但是這都不是AMD的終極目標,他們聲稱處理器速度的競爭已經結束,未來屬于HSA。

六、未來發(fā)展趨勢

在計算機發(fā)展歷程中,為了解決各種特定的問題,不斷有互不兼容的計算模塊被加入系統(tǒng),卻很少從全局優(yōu)化的角度加以考察。計算機整體效率不高的現(xiàn)狀正是這種設計模式的直接后果。常見情況是軟件的計算負載被調度在一個并不適合當前任務的計算設備上低效執(zhí)行。HSA則展現(xiàn)了一種全新的體系架構,可以適應各種特性的計算任務。

HSA版本可以在CPU和GPU之間無縫地共享數(shù)據(jù),而無需內存拷貝和緩存刷新,因為任務以極低的開銷被調度到合適的處理器上。最終的結果是HSA版本的性能高出2.3倍,而功耗降低2.4倍*。相較而言,無論是多核CPU、GPU、甚至非HSA方式的混合CPU和GPU都無法達到這樣的性能水平。同樣重要的是,無需轉換到迥異的編程模型,僅僅通過C++的簡單擴展就可以實現(xiàn)程序。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據(jù)LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現(xiàn)代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數(shù)校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉