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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

内存墙,多核CPU的终结者?

發(fā)布時間:2023/11/30 编程问答 66 豆豆
生活随笔 收集整理的這篇文章主要介紹了 内存墙,多核CPU的终结者? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

原文地址:http://www.ed-china.com/ART_8800045174_400004_500008_OT_8f4eb612.HTM

多核處理器是當今計算領(lǐng)域的主導,而多核芯片則遍布從蘋果的iPad到富士通K超級計算機的各種平臺。2005年,由于功耗將單核CPU的時鐘速度限制在3GHz,英特爾推出了雙核的酷睿(Core 2 Duo)處理器。從那時起,多核CPU和圖形處理單元(GPU)就主導了計算機架構(gòu)。在每個插槽上集成更多內(nèi)核便成為處理器繼續(xù)拓展摩爾定律的方式。

?

在邁向多核的道路中出現(xiàn)了一件有趣的事情:對處理器的利用率開始降低。初看來,英特爾Sandy Bridge服務器有8個3GHz內(nèi)核,Nvidia Fermi GPU有512個浮點運算引擎,似乎能線性地發(fā)揮多核的優(yōu)勢。

?

但超級計算領(lǐng)域出現(xiàn)了令人擔憂的趨勢:為大型數(shù)據(jù)應用部署數(shù)千個多核CPU和GPU插槽預示著多核有嚴重的問題。根據(jù)每秒百萬個浮點操作(Mflops)峰值的比例,當今的超級計算機的利用率還不到10%。原因很簡單:輸入-輸出(I/O)并沒有隨著多核的每秒百萬條指令(MIPS)同步發(fā)展。

?

內(nèi)存體系和內(nèi)存墻

?

早在80年代,“內(nèi)存墻”的說法就已經(jīng)出現(xiàn)了,用于描述CPU時鐘速度和芯片外內(nèi)存和硬盤I/O速度差距。一個有關(guān)GPU的例子就能說明內(nèi)存墻的問題。

?

2005年,當時領(lǐng)先的GPU有192個浮點運算內(nèi)核,而今天的領(lǐng)先GPU則有512個浮點運算內(nèi)核。這六年間,主要的GPU的I/O管道(I/O pipe)卻沒有變。6年前的GPU采用16顯得PCI Express Gen2接口,今天的GPU也是如此。結(jié)果造成從2005年以來,GPU每個內(nèi)核的I/O速率就以2.7倍速度降低。

?

片上緩存的速度是片外DRAM的10倍至100倍,這本應該解決內(nèi)存墻的問題。但緩存也有自身問題,ARM架構(gòu)應用處理器的L1和L2緩存占據(jù)了一半以上的硅片空間。所以緩存,而非計算部分消耗了相當比例的處理能力。

?

緩存控制算法和應用密切相關(guān):有時緩存包含了應用所需的數(shù)據(jù),有時不包含。與其讓緩存控制算法進行有根據(jù)的猜測,決定數(shù)據(jù)的存儲位置,還不如優(yōu)化緩存利用率,降低緩存功耗,如果程序員可以控制緩存和片外存儲數(shù)據(jù)交換的話。

?

當今的內(nèi)存架構(gòu)包括四類:DRAM、Flash閃存和硬盤。主流的DDR3內(nèi)存運行速度為4Gb/s,flash閃存速度為500Mb/s, 硬盤僅有100Mb/s的數(shù)據(jù)傳輸速度。

?

如果不使用片上緩存,就面臨著帶寬降低、延遲增加的情況,這會進一步降低內(nèi)存的有效速度。只有在應用呈現(xiàn)良好數(shù)據(jù)分布,或者在重用的時候才能達到超過20Gb/s的緩存帶寬。如果沒有數(shù)據(jù)的局部性,緩存就不會降低內(nèi)存的瓶頸。

?

超級計算之前將計算密集型應用和I/O密集型應用分開,武斷地劃分出了“每條指令不會有多于一個的存儲器操作數(shù)”(one operand per instruction)的臨界值。如果一個應用中每條指令需要多于1個存儲器操作,就會被視為I/O密集型,如果少于1個操作,就視其為計算密集型。

?

推出多核、單指令流多數(shù)據(jù)流(SIMD)和多媒體加速器等特性,CPU和GPU的計算能力早已超過了I/O速率。計算能力的進步讓多核應用成為I/O密集型應用,使得超級計算能力的利用率低于前文所述的10%。

?

架構(gòu)方案

?

計算機架構(gòu)師改進了動態(tài)內(nèi)存存取(DMA)技術(shù)以降低I/O瓶頸。通常通過硬件來支持DMA,讓內(nèi)存讀取操作和CPU、GPU的操作同步進行。

?

硬件DMA技術(shù)的例子包括英特爾 的I/O加速技術(shù)(I/OAT),Nvidia的GPUdirect和ARM的AMBA DMA引擎。最近,Nvidia為其CUDA工具箱增加了CudaDMA軟件,借助CudaDMA,應用線程可以從計算中獨立出來進行I/O操作。類似地,超級計算應用也開始采用專門的多核處理器內(nèi)核進行I/O(DMA)操作。

?

最終,企業(yè)級軟件公司如Google Sawzall和ApacheHadoop都正在部署新的并行計算模式如Map/Reduce(MR)。諷刺的是Map和Reduce通過磁盤文件交換中間數(shù)據(jù),而磁盤文件是存儲速度最慢的架構(gòu)。MR和Hadoop線程只在包含大量數(shù)據(jù)輸入或中間輸出文件的磁盤或者磁盤附近執(zhí)行操作。

?

不同于建構(gòu)傳統(tǒng)包含三個分工明確但昂貴的子系統(tǒng)(一個存儲服務器、一個計算服務器和連接二者的高速互聯(lián)系統(tǒng))的超級計算機,MR和Hadoop從頭顛覆了傳統(tǒng)的超級計算,而是運行在本地的分布式數(shù)據(jù)上。原因很簡單:數(shù)據(jù)遷移而非計算才是超級計算最耗能的部分。

?

移動“更小的”數(shù)據(jù)集

?

為了在更接近存儲輸入數(shù)據(jù)集的硬盤的地方進行計算,一些研究人員(包括我)正在開拓新方法以減少用于超級計算和多核處理的數(shù)據(jù)集的量。來自氣象建模、多個物理實驗、基因序列和地震處理等“大型數(shù)據(jù)”通常都以數(shù)TB計,因此數(shù)據(jù)量減少2倍或者4倍對于這類數(shù)據(jù)結(jié)構(gòu)來說,將帶來非常顯著的經(jīng)濟效益。

?

從醫(yī)學影像、無線基礎設施的數(shù)據(jù)壓縮結(jié)果來看, 真實世界的X光的數(shù)據(jù)集,超聲波反射和3G/4G無線信號可以在不改變最終結(jié)果的情況下被壓縮。類似的技術(shù)正在用于為包括浮點值等更廣泛的數(shù)據(jù)類型降低多核內(nèi)存墻。

?

總之,革新的DMA技術(shù)、新的編程模式和創(chuàng)新的數(shù)據(jù)壓縮技術(shù)可能會顯著降低多核內(nèi)存墻,讓多核用戶能夠更快速地得到結(jié)果。

?

?

作者:Al Wegener,Samplify System CTO兼創(chuàng)始人,擁有巴克內(nèi)爾大學EE學士學位和斯坦福大學計算機碩士學位。

轉(zhuǎn)載于:https://www.cnblogs.com/yazhouren/archive/2012/08/21/2649243.html

總結(jié)

以上是生活随笔為你收集整理的内存墙,多核CPU的终结者?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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