瀏覽單個文章
ant1228
Golden Member
 
ant1228的大頭照
 

加入日期: May 2003
您的住址: 綠光森林
文章: 2,748
挖個舊聞來看看吧!

來源:電子工程專輯

在近日召開的多核心展覽會(Multicore Expo)上達成了一項明確的共識:在單一晶片內整合多個核心是兼具性能提升與控制功耗的最佳方式。但與會者警告說,除非業界能為多核心系統的編程和除錯開發出新的方法,否則多核心架構的優勢將無從發揮。



對目前的多核心系統進行編程是一項艱鉅的工作,因為這些多核心系統往往是一種採用對稱多處理技術(SMP)的2或4顆核心的同質系統。許多產業觀察家相信,未來的多核心系統趨勢將可能發展為包含有各種通用處理器、協同處理器與DSP,以及配備不同作業系統的異質多核心晶片。

而這樣的系統可能會變得很大。美國麻省理工學院(MIT)的工程與電腦科學系教授暨Tilera新創公司創辦人Anant Agarwal預測,新系統所整合的核心數量每18個月會成長一倍,而到了2011年時,具256個核心的系統晶片將會變得更為普及。

即使要發揮單純的多核心晶片優勢都可能需要多執行緒與平行處理。這些雖不是新的技術,但過去始終未被嵌入式系統程式設計師廣泛採用。

“使用多工軟體,你必須對應用進行平行處理,”QNX軟體公司資深軟體工程師Robert Craig表示。“在嵌入式領域,大家對並行性(concurrency)深懷恐懼。但是,我們必須學著瞭解如何獲取多核心處理器的性能。”

PicoChip設計公司行銷副總裁Rupert Baines指出:“許多多核心元件之所以失敗是因為無法對它們進行編程,軟體開發環境是其中的重頭戲,但卻常常遭到忽略。但如果無人能對一款元件進行編程,它就是僅是一件擺放在那兒的裝飾品。”

半數以上的嵌入式系統開發經費要花在軟體上,MIPS公司CTO Michael Uhler表示。如果軟體開發花費太多成本,則硬體的最佳化將變得徒勞無功,他指出。“即使採用了對稱多處理技術,軟體的分割也並非易事。”

問題多多

Wind River公司CTO Tomas Evensen指出,多核心架構引發了許多編程方面的問題,這些問題包括如何啟動系統?是否在不同的核心上執行不同的作業系統?多個核心之間如何通訊?如何共用記憶體和快取記憶體等資源?如何保持負載平衡?

除錯可能是其中變數最多的問題。“針對平行應用進行除錯的確需要高深的技巧,”Evensen說。其中最為棘手的問題便是有關不同核心間的互動,特別是因負荷減少而發生快速運轉的執行情況。該問題的起因與其影響可能相差數百萬個週期。


圖1:進行多核心設計必須採用的新步驟:最佳化與並行性的C模型。



採用停止處理器運作的傳統除錯方式在多核心處理器同時運作的情況下不再奏效。Evensen指出,其關鍵在於採用不停止核心的動態方法來進行除錯。他以Wind River公司的Workbench除錯器為例表示,該除錯器允許用戶在系統運作的情況下,動態地添加‘感測器點’(sensor point)。然而,他也坦承,這些感測器點會改變時序。

Evensen強調,目前大多數人使用2到4顆核心。但隨著整合核心數量的遽增,他說:“內建平行處理能力的新語言也許是一種解決方案。也許C/C++仍將存在一陣子,但當在一個晶片內整合了256個核心時,我們需要具有更多功能的語言。”

picoChip公司因應這個問題推出了PC102 picoArray系列,其中包括308個處理器和14個協同處理器。PC102的工具鏈包括:一個VHDL解析器、C編譯器、精確週期模擬器、設計分割器、佈局和轉換工具、網路檢查器和除錯器等。C用於個別處理器的編程,VHDL用於將處理器連接起來。雖然採用了手動方式來分割多款晶片設計,但picoChip工具卻會自動地分離穿越不同時脈域的訊號。

採用300多個核心來進行除錯的技巧是在訊號線上放置探棒,picoChip的首席架構設計師Gajinder Panesar表示。這些非侵入式探棒可在不影響訊號處理模組性能的情況下,收集到有用的資料。picoChip的除錯器提供幾款探棒種類,用戶還可定義其探棒類型。

業界迫切需要的是一款支援將多個應用映射(mapping)至多個核心、且能實現執行負載平衡的多核心設計流程,IMEC比利時研究中心的設計技術副總裁Rudy Lauwereins表示。

Lauwereins描述了一個IMEC針對一種緊密耦合的一維和二維VLIW(超長指令集)處理器樣本所開發的工具流程。大多C程式碼被映射至一維VLIW,但緊密迴路則被映射至二維VLIW,而提供更高程度的平行處理能力。一個可重配置(retargetable)的工具套件包括編譯器、硬體產生器、精確週期模擬器和指令精確模擬器。

Lauwereins介紹,多核心設計流程包括三項新措施:其一,獨立於平台運作的最佳化,可產生成一款最佳化的C模型;其二,序列到並行的模式轉換,可產生並行程式碼;最後則取決於平台最佳化。“它們與硬體無關,完全是軟體的事,”他說。“許多時候,你要從軟體著手並釐清該如何搭建架構,而不能反其道而行之。”

多核心元件可能會挑戰設計界有關編程的一些根本假設。MIT的Agarwa說,因為多核心的通訊比記憶體存取實惠,所以,設計師必須從以記憶體為導向的運算模式過渡到以通訊為主的模式上。傳統的叢集運算(cluster-computing)編程方法浪費了多核心所提供的機會,他說,因為用於訊息傳遞和共用的記憶體技術是以高成本的通訊為前提來設計的。

Agarwal提倡一種‘串流’編程方法,它能將記憶體的使用減至最少。從網路中讀取數值,運算後並送出,可避免記憶體存取指令和同步化。他說,由於採用了這種串流方法,才使得MIT的原始架構的第一個字的成本便可持續3個週期。

隨著新編程技術的出現,許多人擔心,因缺少標準應用編程介面(API)和協議所引發大量不相容的問題出現。“開放標準是唯一的出路,”Wind River公司CTO John Bruggeman表示。“我認為身為產業一份子的我們應該為多核心決定並建立API標準、定義作業系統要求,並成立一個組織來確立開發工具所應具備的條件。”

Wind River公司發表了一項範圍廣泛的多核心推廣行動,其中包括對於標準的強力支持,其中包括Eclipse整合開發環境、多核心聯盟的除錯API。Wind River公司便是這項通透性處理器間通訊協定的主要幕後推手。目前,多核心聯盟正對該協定進行標準化。
__________________
=======================ant1228=======================
【新品】技嘉蜘蛛平台要角GA-MA790FX-DQ6
【新品】風的速度,由PWM決定__風�**�
【新品】技嘉斜塔系列一族,G-Power II Pro
【簡介】黑盒版?黑雕版?AMD's Athlon 64 X2 5000+ Black Edition
【新品】ASUS靜音系列一族,銀色騎士&銀色巨塔
【新品】康舒R8 POWER 700 (ATX-700CA-AB8FB)
【新品】熱氣球造型散熱器-CoolerMaster GM SPHERE 行星
【測試】當CoolerMaster Hyper212 遇上 PC Cooler SouthSea
【新品】Dominator CM-690黑色鎖甲批掛上陣
【新品】銀河中的伊謝爾倫要塞~COSMOS 宇宙
【測試】風的速度,由您決定__風神匠(CPU+Board Cooler)
酷飛CoolViva-PRO版,顯卡散熱&空冷靜音的新選擇!
【新品】CoolerMastetr工作站機殼ITower 930 介紹篇(圖多請耐心等候)
[測試] 巨大的蝸牛 日蝕 (Eclipse)散熱器!對應熱導管主機板的利器!
[簡測] AM2 Athlon 64 x2 3600+ Power Consumption
CM Hyper TX AMD 散熱器測試( 對照組AC Freezer 64 Pro)

AMD 全系列 Processor 報價參考
=======================ant1228=======================
舊 2006-06-01, 05:17 PM #85
回應時引用此文章
ant1228離線中