每年公布兩次的全球超級電腦5百強排名,不只是各國展現運算國力的排名,從排名中也可以看出高效能運算技術的新趨勢。日前在美國超級電腦研討會(SC)中揭露的2012年11月Top 500排名,全球排名第一的超級電腦Titan,就採用了Nvidia新推出的GPU繪圖卡K20。

但是,這份排名中,也有6臺超級電腦採用了Intel剛推出的第一款60核心協同處理器Xeon Phi,其中包括了全球超級電腦排名第七,位於德州先進運算中心的Stampede超級電腦,這也是第一部採用Xeon Phi協同處理器的超級電腦。

年底剛公布的Top 500排名有兩大趨勢,首先是美國橡樹嶺國家實驗室的超級電腦Titan,以17.59 Pflops(Peta floating-points operation per second)的總運算效能奪得龍頭,擠下半年前排名第一的美國超級電腦Sequoia(紅衫)。而另一項重要趨勢則是Xeon Phi的首度登場,超級電腦除了利用GPU來提高運算效能的作法之外,又有了新選擇。

1 Pflops相當於每秒可以執行1,000兆次的數學浮點運算。而可以提供17.59Pflops運算效能的Titan超級電腦有多快?每個人每秒若能計算一次浮點運算,全臺灣2,300萬人需連續計算24年所累積的計算量,就相當於Titan用1秒鐘所完成的計算量。

Cray公司採用了18,699個運算節點打造出Titan,每個節點均搭載一顆16核心的AMD Opteron 6274處理器,再搭配一張Nvidia新推出的Tesla K20繪圖卡,總共299,008個處理核心,以及超過700 TB的記憶體,部署在超過200個機櫃中。

Titan超級電腦的前身是曾在2010年排名第一的Jaguar(美洲豹)超級電腦,Cray電腦公司在2012年6月時,先升級Jaguar超級電腦的處理器,並採用了Nvidia前一代的GPU繪圖卡M2090,當時運算效能達到1.94 Pflops。到了2012年底,Jaguar再全面升級到新款GPU繪圖卡,並更名為Titan,運算效能也倍增了9倍。從Jaguar到Titan的升級,不需要重新打造超級電腦的架構,只需要更換運算伺服器內部的繪圖卡,據美國橡樹嶺國家實驗室估算,可以讓科學運算程式改善4~8倍效能。

K20繪圖卡是Nvidia最新發表的繪圖卡,內建了2,496個運算核心,伺服器專用的K20X甚至擁有2,688個運算核心,核心數幾乎是前一代M2090的5倍。據Nvidia表示,單張K20X繪圖卡就可以提供1.31Tflops雙精度浮點運算效能。

在Top 500排名中,有一成多的超級電腦採用了GPU處理器或協同處理器來加速運算效能。這些超級電腦有不少像Titan一樣,採用了Nvidia的GPU繪圖卡。隨著Nvidia推出內建更多運算核心的新款GPU繪圖卡,超級電腦的效能也有機會再提升。Nvidia先推GPU穩坐HPC加速卡龍頭

因為Nvidia早在1999年就推出第一款GPU繪圖卡,2006年時更發表了GPU的開發框架CUDA(Compute Unified Device Architecture),協助開發人員透過C語言或Fortran語言來運用GPU的平行運算核心,2008年更推出專供高效能運算用的GPU繪圖卡後,不只超級電腦,許多HPC高運算伺服器也紛紛搭載Nvidia的GPU繪圖卡,來提高運算效能。

CUDA開發框架經過數次改版,目前已推出5.0版,相關開發工具越來越成熟後,不少商用科學軟體或工程套裝軟體也能直接支援Nvidia的GPU,如數值分析常用的Matlab、物理計算用的Chroma等。使用者不用自行開發平行運算程式,就能使用到GPU的平行運算核心來加速計算。所以,近幾年來,HPC所使用的GPU以Nvidia為大宗,遠多於AMD的GPU繪圖卡。

不過,Nvidia GPU繪圖卡在平行運算領域的地位,開始受到了挑戰。英特爾推出了Xeon Phi協同處理器來對抗Nvidia的GPU。

今年,Xeon Phi初登場,就獲得6臺超級電腦的採用,甚至是目前世界排名第七,而未來有機會挑戰第一的Stampede超級電腦也採用了Xeon Phi來加速平行運算的效能。

Xeon Phi是英特爾第一款正式推出的多核心架構處理器。英特爾在去年6月時就發表了MIC(Many Integrated Core)超多核心架構,可以在單一處理器中提供超多核心數來提高運算效能。英特爾表示,單顆MIC架構的處理器就可以提供Teraflops等級運算效能,相當於一臺1997年超級電腦的運算效能。

英特爾推出超多核心架構的Xeon Phi協同處理器5110P,採用PCIe介面卡設計,可作為HPC的運算加速卡,單顆處理器內建了60個運算核心,運算效能媲美1臺1997年的超級電腦。

60核心處理器媲美十年前的超級電腦
去年11月時,英特爾展出了超多核心架構處理的雛形產品,一年後,同樣在美國超級電腦研討會中,英特爾正式推出了60核心的Xeon Phi協同處理器5110P。這款處理器採用22奈米製程,時脈1.053GHz,採用常見的PCIe介面卡設計,並搭配被動式散熱機制,功耗為225瓦,可搭載8GB的GDDR5記憶體。

英特爾已先出貨給預購者,如美國德州先進運算中心的Stampede超級電腦和美國太空總署氣候模擬中心Discovery系統等。Xeon Phi明年1月28日正式上市,不過,臺灣英特爾表示,這款處理器還不會在臺灣上市。

英特爾一共推出了4種Xeon Phi協同處理器。除了5110P之外,另外還有還將推出一款更低價的Xeon Phi 3100協同處理器,可支援6GB記憶體,同樣採用22奈米製程,但熱設計功耗較高,達到300瓦特,預定明年上半年上市,售價將會低於2,000 美元。其餘2款則是特別客製的版本SE10P和SE10X,不對外銷售。Xeon Phi並非要取代現有處理器

英特爾臺灣分公司產品行銷經理朱宏裕表示:「Xeon Phi並非是用來取代現有處理器的產品,而是用來提高HPC伺服器運算效能的協同處理器。」換句話說,Xeon Phi必須和現有伺服器處理器搭配使用,而無法獨立存在,這也是Xeon Phi之所以採取PCIe介面卡設計的原因。

Xeon Phi就像是一個單晶片,將運算核心和記憶體都集中到單一晶片中,而Xeon Phi的介面卡,就等於一臺搭載了嵌入式Linux作業系統的運算設備。伺服器上安裝了這張介面卡之後,Xeon Phi可以和伺服器上搭載的Xeon處理器組成運算叢集來執行平行運算程式,或者是成為伺服器中的內部子系統,就像是系統中的系統一樣,伺服器可以派發任務給Xeon Phi介面卡中的子系統來運算。

英特爾亞太區暨大中華區高效能運算解決方案架構師Scott David表示,因為Xeon Phi協同處理器延續了Xeon的x86架構,所以,可以沿用平行處理常用的開發語言如C、C++和Fortran語言,也能沿用原有的平行運算模型,所以,在原有Xeon E5處理器環境中執行的程式碼,略作調整並重新編譯,也可以在新的Xeon Phi處理器執行環境中,不需要重新改寫程式碼,就可以提高效能。不過,臺灣大學大資工系副教授洪士灝認為,雖然可以執行,但要充分發揮Xeon Phi的運算效能,還是得費心調校平行運算的程式。

Intel推出Xeon Phi介面卡是為了作為HPC的加速輔助設備之用,也就是要挑戰Nvidia的GPU繪圖卡,若用核心數來比較,Nvidia的GPU繪圖卡擁有高達2千多個運算核心,而Xeon Phi介面卡只搭載一顆Xeon Phi,只有60核心。看起來GPU的核心數比Xeon Phi多很多,但是,洪士灝認為,Nvidia的GPU繪圖卡和Xeon Phi介面卡,同樣都是可以用來加速HPC平行運算的效能,但兩者適合的運算架構截然不同,對於平行運算的加速效果,不一定能放在同一個標準上比較。

臺灣大學大資工系副教授洪士灝表示,GPU類似SIMD架構,而Xeon Phi則是MIMD架構,兩者的運算架構截然不同,擅長的平行運算任務也不同。Xeon Phi擅長MIMD運算,GPU擅長SIMD運算

HPC常見高效能運算方式有兩種,第一種是資料平行化的運算方式,也就是Data Parallel,也可稱為Stream計算。這種作法適合處理大量資料,資料就像水流一樣持續提供給處理器,處理器執行完運算指令後,處理過的資料不需保存在GPU加速卡中,而是繼續提供下一筆資料給處理器,就像水流一樣持續流動。洪士灝表示,GPU擅長這種運算方式,運算量不大,也不用保留資料,處理完就送走。

另外一種運算方式則是要對同一批資料反覆進行大量運算。例如汽車碰撞的程式,可以用來計算汽車和牆壁碰撞後,汽車或汽車內木偶的變形過程。分析人員可用3角形來模擬汽車外觀,再透過平行運算來計算汽車受力後的變化,這是工程上常用的有限元素分析方法或者稱為蒙地卡羅模擬。運算時,程式每次計算一個奈秒後的變化,如哪些地方受力會發生改變,計算出結果後,程式再依據前一奈秒的結果,採用同樣的運算規則來計算下一個奈秒的改變情形。資料就只有車子和牆,同一批資料要計算幾百萬次。洪士灝認為,Xeon Phi比GPU更擅長處理這類型的運算。

因為GPU擅長Stream風格的平行計算方式,接近是SIMD(Single Instruction, Multiple Data,單一指令多重資料)的運算模式,這是指所有運算核心都執行同一個指令,只是作用在不同的資料上。而Xeon Phi則是MIMD架構(Multiple Instruction, Multiple Data,多重指令多重資料)的運算模式,Xeon Phi中的60個核心,每個核心都可以處理不同的指令和不同的資料。正因為如此,每個處理核心彼此需要許多同步和通訊的機制,所以,Xeon Phi處理核心的電路遠比GPU的核心更複雜。

而SIMD架構的GPU,上千個處理核心會分群執行,例如一次使用256個核心,每個核心都是同步執行相同的指令,所以,彼此之間不需複雜的通訊或同步機制,而且所有核心可以共用同一個指令分派元件,所以,單一運算核心的電路可以簡化,就很容易在單一晶片中設計出大量的運算核心。但是,洪士灝認為,遇到蒙地卡羅模擬這類運算需求,例如汽車碰撞模擬,要對同樣的資料進行反覆大量運算的需求,GPU就不容易處理。

Xeon Phi內建記憶體少,不易執行大型運算任務
不過, Xeon Phi介面卡目前內建記憶體只有8GB,有些大型運算任務的資料量容易超過這樣的規模,程式得先切割資料後才能放入Xeon Phi中計算,這樣作會影響運算效能,所以,Xeon Phi目前也不一定能滿足這類大型運算的需求。

洪士灝表示,Xeon Phi的處理核心是x86架構,雖然複雜性相當於是十年前的處理器架構,只是現在集中到同一個晶片中,就像是在一張主機板上有60顆處理器一樣,彼此組成運算叢集。「若能找到適合這類處理器的應用,這種在單晶片中放入60核心的作法,能以更低成本來取代現有的伺服器叢集或大型平行運算用的電腦。」他說。

雖然Xeon Phi加速卡採用的是常見的PCIe規格,朱宏裕表示,但因既有伺服器的主機板還無法識別Xeon Phi協同處理器,再加上伺服器內部設計也須考量Xeon Phi產生的熱量來設計散熱機制,現有已經內建PCIe插槽的HPC伺服器,仍無法直接使用Xeon Phi來加速運算效能。所以,無法像Nvidia的GPU繪圖卡那樣,可以透過更換新版加速卡來提高HPC效能,例如今年11月搶下超級電腦排名第一的Titan超級電腦,就是採取GPU繪圖卡升級的作法而提高了9倍運算效能。

不過,伺服器廠商如Dell、IBM、HP、Tyan、宏碁、華碩等都將支援Xeon Phi,甚至也有伺服器廠商未來將推出可同時支援GPU繪圖卡和Xeon Phi加速卡的HPC產品。HPC產品越來將有更多種搭配方式可供企業選擇。文⊙王宏仁

熱門新聞

Advertisement