2007年6月5日 星期二

[CNET新聞專區]英特爾:軟體業需跟上摩爾定律

英特爾:軟體業需跟上摩爾定律
CNET新聞專區:Ina Fried  2007/05/28

英特爾公司表示,軟體業多年來坐享硬體業開發更快速晶片以提升軟體表現的成果,現在情勢已變,軟體業者必須努力寫出更好的程式,才能搭配硬體的效能。

如英特爾和超微(AMD)等晶片大廠,已成功推出多核心的處理器,眼前的挑戰是大多數的軟體都不適用於這種先進的技術。英特爾研究員Shekhar Borkar 說:「軟體也必須開始遵循摩爾定律(電腦晶片之效能每18個月增加一倍)。軟體支援的平行處理數量,必須每兩年增加一倍。」

但這對業界而言是一大挑戰。伺服器面的情況較佳,主機處理多個同步工作已相當普遍。桌面應用軟體或可取法超級電腦和伺服器,但另一個原理,安達爾定律(Amdahl's Law)認為,程式能容納的平行處理數量,有其固有上限。

Borkar表示,眼前還有其他選擇。應用軟體能處理多個明確不同的工作,而系統能同時執行多個應用軟體。程式和系統都能推斷出使用者可能需要哪種工作,並以此分配使用處理能力。但最不可行的,就是業界墨守成規。

微軟公司最近也發出類似的警告。上週在洛杉磯舉行的Windows Hardware Engineering Conference(Windows硬體工程大會)中,研究與策略長Craig Mundie就鼓勵業界著手解決這項問題。

Mundie說:「我們現在的確面臨如何應對的挑戰。我認為整個個人運算的程式設計生態系統,應該提升到一個新階段,能夠可靠地構建分散式、高度一致性,且能夠充分運用這種運算力的大型應用軟體。」

上週稍早,微軟的Ty Carlson表示,下一版的Windows在針對即將成為PC標準的多處理核心方面,將有「基本上的不同」。他說,Vista是專門針對多緒處理,但不及晶片業很快就會達到的16個以上執行緒。應用軟體部分更是遠遠落後。

Carlson說:「在10到15年內,我們將擁有難以置信的運算力。眼前的挑戰是把(軟體)生態系統提升到懂得如何編寫這些程式。」

但英特爾的Borkar認為,微軟和其他軟體商早知情勢有變,卻沒有迅速應對。 他表示:「他們口頭說說,談了很多,但沒什麼實際作為。這是一家大公司(微軟),難免有惰性。」

他說軟體商必須面對現實,盡快改變他們的行事作風,否則無法繼續坐享過去的效能改進。對於核心晶片速度並未增加,他說:「這是物理上的限制。」

僅管憂心,Borkar說他相信業界能夠克服這項挑戰。因為競爭將激發創新。他表示:「如果有一家軟體商不接受這個現實,就會有另一家公司抓住這個機會。」

他指出,某些軟體領域已經出現進展,遊戲就是其一。他也指出其他值得期待的領域,尤其是可發展出個別最優化語言的特定工作。如網路連線工作,便可用特別的最優化網路程式碼處理。

英特爾已針對發揮多核心效能推出自己的軟體開發工具,同時也與大學院校合作,讓程式設計的教學更著重在平行處理,培養更符合業界需求的下一代軟體開發人才。Borkar說:「從大學起步,我們這些老狗已經學不會新把戲了。」(陳智文/譯)



專家觀點:多核心處理器需要更多軟體工具支援
上網時間 : 2007年06月04日








摩爾定律(Moore's Law)讓運算產業的時脈速度至今成長不衰。隨著邏輯接近實際的速度極限,伴隨快速時脈的性能提升也接近巔峰。為了讓性能持續提升,微處理器供應商如今將多個處理器放進單晶片中,以替代速度的成長。

多核心運算並不是新鮮事,多處理器設計也不稀奇。例如手機,就是採用不同的處理器來分別負責通訊協定、音訊、多媒體訊號處理,以及簡訊、遊戲等其使用者應用程式。這種非對稱的多工處理應用相對簡單且容易實現,設計者將不同的系統任務分派給不同的處理器,讓每個處理器能獨立運作。做為資料交換的系統內部程序通訊(interprocessor communications)問題解決了,每個處理器基本上也能獨立設計與除錯。

然而採用多核心元件來進行多工處理以獲得系統性能之提升,卻帶來了完全不同的設計問題。這種對稱性多工處理(Symmetric multiprocessing,SMP),充分利用了可用的處理能力,要求任何指定的軟體任務能夠在任何時候、在任何核心上執行。替代方法是手工分配核心的任務執行緒。總之,SMP導入了一系列軟體設計和除錯問題,許多都與平行執行任務時資源存取協調及軟體任務同步化相關。

為了迎戰這些諸如死結(deadlocks)及資料阻塞等單核心處理器系統不曾出現的問題,必須要專門的軟體開發和特別設計的除錯工具,才能實現多核心處理。不幸的是,儘管產業界已經開始著手開發,不過可用的工具不多。即使有了這些工具,在執行緒及暫存器等級執行的SMP程式碼複雜性對開發商來說依然存在著重大挑戰。

伴隨時脈速度大幅提升帶來的電路設計問題,朝向多核心處理器發展的趨勢似乎也不可避免。假以時日,針對此一新架構的軟體開發工具將會逐漸多樣化;不過現在設計者的選擇並不太多。

沒有留言: