<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 利用高效的編程技術(shù)發(fā)揮多內核架構優(yōu)勢

利用高效的編程技術(shù)發(fā)揮多內核架構優(yōu)勢

作者: 時(shí)間:2014-01-07 來(lái)源:網(wǎng)絡(luò ) 收藏
在整個(gè)嵌入式領(lǐng)域,“更多內核”已經(jīng)成為設計趨勢,一些硬件架構可以提供數十個(gè)內核,有些架構中的內核甚至多達上千個(gè)。然而,多內核設計在軟件方面仍存在諸多挑戰,在不同架構間進(jìn)行應用程序的移植并不容易。

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

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

服務(wù)器

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

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

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

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

編程人員現在都在使用這些平臺,因為它們能大大簡(jiǎn)化編程任務(wù)。同樣,應用程序可以使用越來(lái)越多的內核,前提是應用程序可高效地利用充足的線(xiàn)程。高效使用多內核系統并不像表面看起來(lái)那么容易。緩存大小和應用程序工作數據集中的參考位置會(huì )影響特定算法的運行效果。

AMP應用處理器

對稱(chēng)處理()架構對許多嵌入式應用來(lái)說(shuō)非常有用,但非對稱(chēng)多處理(AMP)也有它的用武之地。AMP配置在很多地方都可以看到,從TI的OMAP(開(kāi)放多媒體應用平臺)到飛思卡爾的P4080 QorIQ都有AMP的身影(圖3)。
利用高效的編程技術(shù)發(fā)揮多內核架構優(yōu)勢


上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>