美國國家科學基金會的一份研究報告認為,如今的多核處理器需要更好的方式來編程。馬里蘭大學的一位研究人員在1月份出版的美國計算機協會的旗艦級通訊刊物上稱,為了有效使用多核處理器,IT業需要徹底反思它已使用了50多年的基本計算機體系結構。 馬里蘭大學高級計算機研究所教授Uzi Vishkin在論文中稱:"近期從單處理器計算機系統向多處理器平行系統的大規模遷移,要求對建立新系統并為之編程的計算機科學的許多方面進行徹底改造。" Vishkin甚至提供了一份新體系結構抽象圖,他稱之為ICE(即時并行執行),他利用美國國家科學基金會提供的資金開發出了ICE。 我們今天所使用的基本計算機體系結構是基于二十世紀四十年代數據學John von Neumann提出的概念的。在他的體系結構中,數據和程序存儲于計算機內存并被饋送給計算機的CPU。程序通過使用程序計數器執行,這就為CPU提供了 內存當中下一個將執行的指令的地址。 這種方法允許進行Vishkin所稱的串行計算,在這種設計當中,"在串行程序里可供執行的任何單個指令可以立即執行。" 但是,它卻是受限制的,因為它一次只允許執行單個指令。Vishkin稱,在多核處理器和擁有大量可用內存的時代,不再需要這種限制了。取而代之的是,多個指令通?梢愿斓仄叫袌绦--所有指令都同時執行且只需一個步驟。 Vishkin的替代方法不同于von Neumann體系結構,它允許在任何指定的時間執行無數個指令,這樣可以極大地簡化程序員的工作。他說,有了ICE,"你可想象任何數量的指令,只要某 個指令的輸入不是另一個指令的輸出。"程序員不再需要擔心有多少處理器可供該項任務使用。 Vishkin表示,這種體系結構要求改變硬件設計。至于操作方式,芯片可能需要在處理器和內存之間建立高帶寬、低延遲的網絡。硬件需要一個單處理器核來控制其他所有核。如果代碼是串行的,它可以在那個核上執行。如果有其他指令,中央處理器可以向其他核發送其他指令。 Vishkin擁有這項技術的6項專利,研究小組也建立了可以在ICE抽象體系結構上運行的原型硬 |