<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è) > 設計應用 > 軟件支持成“軟肋” 發(fā)展多核困惑重重

軟件支持成“軟肋” 發(fā)展多核困惑重重

——
作者: 時(shí)間:2007-09-26 來(lái)源:計世網(wǎng) 收藏
心的思想并不新鮮,制造工藝的上的局限導致了直到目前處理器在成本上才有跟以前單核處理器相當的水準。當然,即便是最先進(jìn)的65nm工藝,制造一塊兩個(gè)核心以上的處理器,成本依然還相當高昂。 

  眾“核”難調

  即便是在制造上沒(méi)有大問(wèn)題,就處理器的系統結構而言,處理器依然面臨大問(wèn)題。如果僅僅簡(jiǎn)單地考慮多核的物理連接,而沒(méi)有充分考慮到處理器的運行和使用模式,將極大限制處理器的利用率,尤其是在處理有資源沖突應用的時(shí)候,多個(gè)核心之間的資源調配就成了效率關(guān)鍵。在目前的算法條件下,還沒(méi)有更好的控制兩個(gè)以上處理器合理調配資源的方法。這并非因為無(wú)法實(shí)現更好的算法從而充分調配處理器資源,而是因為目前多核處理器普遍的算法相對比較簡(jiǎn)單。

  總體來(lái)看,算法無(wú)法知道具體的可用資源,并且硬件的搭配因為成本問(wèn)題沒(méi)有充分考慮一些意外情況,因而,以“同類(lèi)”思想考慮的處理器在面對“異類(lèi)”運算時(shí)就會(huì )變得效率低下。

  現在,多核處理器有多種安排形式,AMD的雙核、Intel的Pentium D以及IBM的Cell架構乃是其中幾種代表。

  Intel很早就通過(guò)超線(xiàn)程技術(shù)實(shí)現了邏輯上的雙處理器系統,但這不過(guò)是對處理器閑置資源的一種充分利用而已,并且這種充分利用只有在特定的條件下才會(huì )比較合適,尤其是針對流水線(xiàn)比較長(cháng),而兩種運算并不相互交叉的時(shí)候,才會(huì )有較高的效率。但像編碼解碼、長(cháng)期重復某種矩陣運算、一些沒(méi)有經(jīng)過(guò)仔細編寫(xiě)的,似乎并不能充分利用這個(gè)特性。

  即使IBM的Power5架構,也需要跟最新的操作系統進(jìn)行融合,加上運行在其上的,才有可能利用并發(fā)多線(xiàn)程。這是物理上多核系統的資源利用的一個(gè)映射,至少可以說(shuō)明,僅僅通過(guò)操作系統忙乎還遠遠不夠。

  目前條件下,Intel的多核系統和AMD有根本不同。根據多核處理器系統強調可擴展性的特點(diǎn)來(lái)看,目前的Pentium D并不是一個(gè)良好的多核解決方案。并且,在流媒體時(shí)代,高清晰的內容需要處理器作為一個(gè)數據中心,不僅告訴處理器數據,還需要高速傳輸數據,僅僅是把兩個(gè)核心安排在一個(gè)處理器內,無(wú)法實(shí)現根本轉變。

  I/O成瓶頸

  由于兩個(gè)核心只能共用一個(gè)I/O通道,當兩個(gè)核心之間的數據進(jìn)行交流的時(shí)候,就無(wú)法再從外部讀入數據從而利用兩者的時(shí)間差實(shí)現資源的有效搭配和利用。盡管兩個(gè)核心之間可以并行運算,但就整個(gè)系統而言,無(wú)法實(shí)現真正的流水線(xiàn)操作。

  加上分離的緩存結構需要取得一致性,兩個(gè)內核之間的交流變得經(jīng)常而且頻繁,這實(shí)際上也會(huì )降低處理器的效率,因此Pentium D在技術(shù)上并不被看好。

  AMD因為通過(guò)引入HyperTransport,部分解決了這個(gè)問(wèn)題,并且因為處理器內部自己有獨立的內存控制器,可以獨立訪(fǎng)問(wèn)內存,兩個(gè)核心之間的行為具有相對獨立性,數據相關(guān)變得很小。因而一些測試表明,其隨機處理數據的能力要高于Pentium D。

  AMD64的最大特性是引入了HyperTransport,它的良好擴展性使得處理器實(shí)現多核、多處理器系統相對容易一些,并且,多處理器擴展的效果也非常好,這是它能夠在桌面雙核領(lǐng)域暫時(shí)領(lǐng)先的重要原因??紤]到這些,Intel可能也會(huì )在合適的時(shí)候引入類(lèi)似架構。

  Cell的多核實(shí)現起來(lái)并不完全一樣,因為制造太復雜,估計到65nm的時(shí)候,這個(gè)處理器才能夠在成本上具有競爭力。與其他基于對稱(chēng)多處理器不同的是,這個(gè)處理器把重心放在了運算基元之上,從而能夠把處理器應用到面對不同的應用類(lèi)型,它其中包含的核心更多是以運算的基礎元件形式存在的。因而,即便在內部,也是按照一個(gè)系統的思想來(lái)實(shí)現的,各個(gè)運算單元之間有高速的連接通道,除了主控處理器用來(lái)分配任務(wù)從而形成運算的流水線(xiàn)思想外,其余幾個(gè)并不是具有很完善的運算能力。這幾種系統都面臨同樣的問(wèn)題:I/O將是最嚴重的瓶頸。

  虛擬化在一定程度上能夠處理一些因為多核帶來(lái)的問(wèn)題,可以讓?xiě)?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/軟件">軟件和操作系統在透明的環(huán)境下對處理器資源進(jìn)行分配和管理。

  軟件是軟肋

  即使桌面操作系統支持雙處理器,也需要很長(cháng)一段時(shí)間。目前在對稱(chēng)多處理器方面,操作系統對資源的分配和管理并沒(méi)有本質(zhì)的改變,多以對稱(chēng)的方式進(jìn)行平均分配。

  也就是說(shuō),在操作系統層面,當一個(gè)任務(wù)到來(lái)時(shí),剝離成為兩個(gè)并行的線(xiàn)程,因為線(xiàn)程之間需要交流以及操作系統監管,它導致的效率損失要比硬件層面的大得多。并且,多數軟件并沒(méi)有充分考慮到雙核乃至多核的運行情況,導致線(xiàn)程的平均分配時(shí)間以及線(xiàn)程之間的溝通時(shí)間都會(huì )大大增加,尤其是當線(xiàn)程需要反復訪(fǎng)問(wèn)內存的時(shí)候。比如做一個(gè)FFT測試時(shí),由軟件和硬件構成的系統將呈現出巨大差異,這時(shí)Pentium D將被完全擊倒。這不是Pentium D的錯,多數操作系統還沒(méi)有完全實(shí)現自由的資源分配。IBM也是通過(guò)AIX 5.3L在支持更自由的虛擬化Power5上,實(shí)現了資源的動(dòng)態(tài)調配和劃分。

  從長(cháng)遠來(lái)看,需要使用虛擬化技術(shù)才可能實(shí)現操作系統對任務(wù)的具體劃分,這很可能改變一些通用的模式。不僅操作系統層面無(wú)法完全解決這個(gè)問(wèn)題,就是軟件在編寫(xiě)的時(shí)候其編譯器都無(wú)法充分解決這個(gè)問(wèn)題。

  面對多核系統,需要有并行的思想才有可能充分利用資源,而人類(lèi)的思維模型習慣于線(xiàn)性思維,對“面”或者更為復雜的立體模式,效率會(huì )下降很多。

  軟件的缺失給多核蒙上了一些陰影。盡管用戶(hù)在充滿(mǎn)希望地期待著(zhù),但思維完全的改變,不是一朝一夕的事情。更重要的是,一些表現多核處理能力的輸出系統無(wú)法承受這樣的運算量。

  現在能充分享受到多核系統的用戶(hù)依然還是企業(yè)級用戶(hù),那些專(zhuān)門(mén)進(jìn)行密集計算的用戶(hù)可以充分利用多核節省下來(lái)的空間,大大增加計算密度,從而降低整體管理費用。

  對于一些線(xiàn)性模型,如Google的查找算法,對處理器系統的要求是多多益善。一些用于網(wǎng)絡(luò )游戲的服務(wù)器,也能夠從多核之中看到可支持用戶(hù)數量的成倍增長(cháng)。對于一些需要科學(xué)運算的石化、石油勘探等大量數據轉換來(lái)說(shuō),不僅需要多核,還需要大量的顯示芯片實(shí)現數據的可視化。

  本來(lái),多核在可視化領(lǐng)域具有遠大前途,渲染速度可以加倍,矩陣運算容量可以大增,可惜現在的OpenGL還太可惡,很難拆分數據封裝。

  在仿真領(lǐng)域,大量的多核可以充分模擬仿真的網(wǎng)格特性,因而可以充分利用在氣象等高密度計算中。

  有人說(shuō),多核系統可以提高多任務(wù)的性能,可以同時(shí)做很多事情,但須知,人是需要專(zhuān)心的動(dòng)物。我看,多核的真正春天要寄托在家庭服務(wù)器上,只有這時(shí)候,電腦轉變成為數字家庭的數據存儲和運算中心,它的多核意義才會(huì )凸顯。

  無(wú)論如何,需要把眼光放在軟件端才是正途,至于使用幾個(gè)核的處理器,讓開(kāi)發(fā)人員去思考好了。 


關(guān)鍵詞: 軟件 編程 多核 嵌入式系統

評論


相關(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>