導讀:美國國家科學基金會的一份研究報告認為,如今的多核處理器需要更好的方式來編程。
{
window.open('http://articles.csdn.net/uploads/allimg/110222/2_110222090815_1.jpg')
}" src="http://articles.csdn.net/uploads/allimg/110222/2_110222090815_1.jpg" border="0" alt="" width="600" height="600">
馬里蘭大學的一位研究人員在1月份出版的美國電腦協會的旗艦級通訊刊物上稱,為了有效使用多核處理器,IT業需要徹底反思它已使用了50多年的基本電腦體繫結構。
馬里蘭大學進階電腦研究所教授Uzi Vishkin在論文中稱:“近期從單一處理器電腦系統向多處理器平行系統的大規模遷移,要求對建立新系統並為之編程的電腦科學的許多方面進行徹底改造。”
Vishkin甚至提供了一份新體繫結構抽象圖,他稱之為ICE(即時並存執行),他利用美國國家科學基金會提供的資金開發出了ICE。
我們今天所使用的基本電腦體繫結構是基於二十世紀四十年代資料學John von Neumann提出的概念的。在他的體繫結構中,資料和程式儲存於電腦記憶體並被饋送給電腦的CPU。程式通過使用程式計數器執行,這就為CPU提供了記憶體當中下一個將執行的指令的地址。
這種方法允許進行Vishkin所稱的串列計算,在這種設計當中,“在串列程式裡可供執行的任何單個指令可以立即執行。”
但是,它卻是受限制的,因為它一次只允許執行單個指令。Vishkin稱,在多核處理器和擁有大量可用記憶體的時代,不再需要這種限制了。取而代之的是,多個指令通常可以更快地平行執行--所有指令都同時執行且只需一個步驟。
Vishkin的替代方法不同於von Neumann體繫結構,它允許在任何指定的時間執行無數個指令,這樣可以極大地簡化程式員的工作。他說,有了ICE,“你可想象任何數量的指令,只要某個指令的輸入不是另一個指令的輸出。”程式員不再需要擔心有多少處理器可供該項任務使用。
Vishkin表示,這種體繫結構要求改變硬體設計。至於操作方式,晶片可能需要在處理器和記憶體之間建立高頻寬、低延遲的網路。硬體需要一個單一處理器核來控制其他所有核。如果代碼是串列的,它可以在那個核上執行。如果有其他指令,中央處理器可以向其他核發送其他指令。
Vishkin擁有這項技術的6項專利,研究小組也建立了可以在ICE抽象體繫結構上啟動並執行原型硬體。(