<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式開發(fā)技巧:利用編程技術(shù)發(fā)揮多內(nèi)核架構(gòu)優(yōu)勢

          嵌入式開發(fā)技巧:利用編程技術(shù)發(fā)揮多內(nèi)核架構(gòu)優(yōu)勢

          作者: 時間:2016-09-12 來源:網(wǎng)絡(luò) 收藏

          在整個嵌入式領(lǐng)域,“更多內(nèi)核”已經(jīng)成為設(shè)計(jì)趨勢,一些硬件架構(gòu)可以提供數(shù)十個內(nèi)核,有些架構(gòu)中的內(nèi)核甚至多達(dá)上千個。然而,多內(nèi)核設(shè)計(jì)在軟件方面仍存在諸多挑戰(zhàn),在不同架構(gòu)間進(jìn)行應(yīng)用程序的移植并不容易。

          本文引用地址:http://www.ex-cimer.com/article/201609/303646.htm

          在低端嵌入式領(lǐng)域,單內(nèi)核解決方案仍然存在。通過采用速度更快或帶寬更寬的處理器仍有可能提升系統(tǒng)的功能和性能曲線。在高端領(lǐng)域,多內(nèi)核是必然的發(fā)展方向。這正是雙精度浮點(diǎn)算法經(jīng)常出現(xiàn)并在超級計(jì)算機(jī)中長盛不衰的原因。事實(shí)上,臺式機(jī)和機(jī)架安裝系統(tǒng)(比如Nvidia的產(chǎn)品)正在將這種處理能力普及化。

          在討論軟件和多時經(jīng)常提及的另一個問題是虛擬化。并不是所有多內(nèi)核平臺都支持虛擬化,但虛擬化確實(shí)能帶來更好的機(jī)會。雖然虛擬化使得硬件設(shè)計(jì)面臨更多的挑戰(zhàn),但它通常能簡化軟件和應(yīng)用管理。

          SMP服務(wù)器

          Xeon Nehalem-EX是Intel公司提供的頂級8內(nèi)核對稱多處理(SMP)平臺。像8芯片、64內(nèi)核系統(tǒng)這樣的多芯片解決方案,通常采用高速 QuickPath點(diǎn)到點(diǎn)互連技術(shù)將處理器和外設(shè)控制器鏈接在一起(圖1)。使用過帶HyperTransport鏈路的AMD Opteron處理器的工程師,對這種架構(gòu)非常熟悉。在這兩種情況下,最簡單的配置是單個處理器通過單條高速鏈路鏈接到單個外設(shè)控制器。

          1.jpg

          除了提供分布式內(nèi)存子系統(tǒng)外,Intel和AMD還實(shí)現(xiàn)了連貫緩沖非統(tǒng)一內(nèi)存尋址(ccNUMA)技術(shù)。每個處理器芯片都有自己的內(nèi)存控制器以及一級、二級和三級緩存。任何芯片都可以使用高速鏈路訪問其它任何芯片中的內(nèi)存。當(dāng)然,離請求者越遠(yuǎn)的數(shù)據(jù)訪問時間越長。這些高速鏈路也被用于消費(fèi)設(shè)備,但只有到 I/O中心的單條鏈路是必需的。換句話說,在共享內(nèi)存訪問時服務(wù)器將在處理器芯片間產(chǎn)生顯著的流量。芯片至芯片流量和緩存管理是高效操作的關(guān)鍵。

          HT Assist是AMD最新推出的Istanbul Opteron處理器的一個重要功能,它通過優(yōu)化內(nèi)存請求和響應(yīng)過程來盡量減少相關(guān)事務(wù)處理的數(shù)量,進(jìn)而釋放出大量帶寬用于處理其它業(yè)務(wù)(圖2)。HT Assist實(shí)際上會跟蹤數(shù)據(jù)在內(nèi)核和緩存間的移動,允許請求得到具有所需數(shù)據(jù)的最近內(nèi)核的服務(wù)。

          2.jpg

          最壞的情況是擁有片外存儲器空間的芯片必須從片外存儲器訪問數(shù)據(jù);最好的情況是發(fā)現(xiàn)數(shù)據(jù)正好位于運(yùn)行著需要這個數(shù)據(jù)的線程的芯片緩存中;中間情況是內(nèi)核從相鄰芯片的緩存中獲取數(shù)據(jù)。使用虛擬化和緩存技術(shù)后系統(tǒng)將變得更加復(fù)雜,并導(dǎo)致數(shù)據(jù)延時更加難以確定。這在確定性嵌入式應(yīng)用中可能是個問題,但在大多數(shù)服務(wù)器應(yīng)用中問題并不十分明顯,因?yàn)檫@種情況下的速度比精細(xì)的確定性更加重要。

          編程人員現(xiàn)在都在使用這些平臺,因?yàn)樗鼈兡艽蟠蠛喕幊倘蝿?wù)。同樣,應(yīng)用程序可以使用越來越多的內(nèi)核,前提是應(yīng)用程序可高效地利用充足的線程。高效使用多內(nèi)核系統(tǒng)并不像表面看起來那么容易。緩存大小和應(yīng)用程序工作數(shù)據(jù)集中的參考位置會影響特定算法的運(yùn)行效果。

          AMP應(yīng)用處理器

          對稱處理(SMP)架構(gòu)對許多嵌入式應(yīng)用來說非常有用,但非對稱多處理(AMP)也有它的用武之地。AMP配置在很多地方都可以看到,從TI的OMAP(開放多媒體應(yīng)用平臺)到飛思卡爾的P4080 QorIQ都有AMP的身影(圖3)。

          3.jpg

          TI的OMAP 44xx平臺整合了ARM Cortex-A9、PowerVR SGX 540 GPU、C64x DSP和圖像信號處理器。每個內(nèi)核有專門的功能,處理器之間的通信不是對稱的。OMAP只工作在AMP模式,而P4080的內(nèi)核是SMP系統(tǒng),但也能夠?qū)?nèi)核劃分為AMP模式。8內(nèi)核芯片可以像8個獨(dú)立內(nèi)核那樣運(yùn)行,在許多配置中也可以聯(lián)合起來使用(如一對雙內(nèi)核SMP子系統(tǒng),或四個單內(nèi)核子系統(tǒng))。

          OMAP和P4080在高層架構(gòu)的主要區(qū)別是OMAP功能是固定的,內(nèi)核針對各自的事務(wù)做了優(yōu)化。這將使編程容易得多,因?yàn)榭梢愿鶕?jù)匹配功能將應(yīng)用程序劃分到特定內(nèi)核。

          每個子系統(tǒng)的性能水平受架構(gòu)的限制,但P4080可以調(diào)整劃分方案,雖然劃分通常是在系統(tǒng)啟動時完成的。系統(tǒng)設(shè)計(jì)師可以調(diào)整P4080中內(nèi)核的分配,前提是有足夠多的內(nèi)核。市場上也有內(nèi)核數(shù)量較少的QorIQ平臺,因此可以選用更經(jīng)濟(jì)的芯片。

          IBM的Cell處理器填補(bǔ)了中間的空白。它采用了1個64位的Power內(nèi)核和8個增效處理單元(SPE)。所有SPE都是相同的(每個有256KB的內(nèi)存),它們工作在隔離狀態(tài),這與上述討論的共享內(nèi)存SMP系統(tǒng)有所不同。SPE內(nèi)沒有緩存,也不支持虛擬內(nèi)存。

          對軟硬件設(shè)計(jì)來說,這種方式既有優(yōu)點(diǎn)又有缺點(diǎn)。優(yōu)點(diǎn)為是簡化了硬件實(shí)現(xiàn),但從多個角度看都使軟件復(fù)雜化了。例如,內(nèi)存管理受應(yīng)用程序控制,就像內(nèi)核間的通信一樣。數(shù)據(jù)在能夠操作之前必須要移進(jìn)SPE的本地內(nèi)存。完全開發(fā)Cell這樣的架構(gòu)很花時間,因?yàn)樗鼈冇袆e于更傳統(tǒng)的SMP或AMP平臺。多年來在像索尼的PlayStation 3這樣的基于Cell的平臺上所作的軟件改進(jìn)突顯了和經(jīng)驗(yàn)的變化。

          GPU等專用處理器

          改變是使用圖形處理單元(GPU)是否成功的關(guān)健。來自ATI和Nvidia等公司的GPU在單個芯片內(nèi)有上百個內(nèi)核,這些GPU可以被整合進(jìn)多芯片解決方案,向開發(fā)人員提供上千個內(nèi)核。例如,集成進(jìn)1U機(jī)箱的4個Nvidia Tesla T10就可以提供960個內(nèi)核(圖4)。

          4.jpg

          對Tesla或其它任何兼容的Nvidia GPU芯片進(jìn)行編程都極具挑戰(zhàn)性,但類似Nvidia的CUDA這樣的架構(gòu)或基于CUDA的運(yùn)行時利用可以使工作變得更加輕松。部分挑戰(zhàn)來自于 Nvidia GPU的單指令、多線程(SIMT)架構(gòu)。與許多高性能系統(tǒng)一樣,這種GPU喜歡處理數(shù)組數(shù)據(jù)。對許多應(yīng)用來說這是不錯的選擇,但并非都是這樣,這正是 GPU經(jīng)常要與多內(nèi)核CPU匹配的原因之一。


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();