999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向大數據應用挑戰的超級計算機設計

2016-09-21 08:30:23廖湘科譚郁松盧宇彤周恩強國防科學技術大學計算機學院長沙410073
上海大學學報(自然科學版) 2016年1期

廖湘科,譚郁松,盧宇彤,謝 旻,周恩強,黃 杰(國防科學技術大學計算機學院,長沙410073)

面向大數據應用挑戰的超級計算機設計

廖湘科,譚郁松,盧宇彤,謝旻,周恩強,黃杰
(國防科學技術大學計算機學院,長沙410073)

在大數據時代,大數據處理給面向高性能計算設計的超級計算機帶來計算、存儲、通信、編程等軟硬件體系結構方面的挑戰.對此在分析目前主流學術界和工業界相關研究成果的基礎上,介紹了天河二號超級計算機系統針對大數據處理應用所采用的新型異構多態體系結構、自主定制高速互連網絡、混合層次式存儲系統、混合計算框架等多種優化措施,為大數據時代的超級計算機設計提供有意義的參考.

大數據;超級計算機;天河二號

大數據已成為當前各界關注的焦點,泛指大規模、超大規模的數據集.維基百科對“大數據”[1]的定義是,所涉及的資料量規模巨大到無法通過目前主流軟件工具,在合理時間內達到收集、管理、處理并整理成為幫助企業經營決策的資源.數據咨詢公司IDC提出大數據呈現4V(volume,velocity,varity,value)特性[2].容量(volume)體現為在信息世界里,產生、收集和分析的數據量從TB級別向ZB級別發展;產生速率(velocity)是指數據產生和傳播的速度極快,呈現流動性特征;多樣性(varity)表現為數據來自不同數據源,在編碼格式、存儲格式、應用特征等多個方面呈現多層次、多方面的差異;價值(value)是指大數據價值密度低,而商業價值高的特點.大數據蘊含大信息,大信息將在更高更廣的層面提升用戶的觀察力、決策力,為人類社會創造巨大價值.規模巨大、價值稀疏、結構復雜、時效性強的大數據處理需求是傳統高性能科學與工程計算設計所不能滿足的,存在計算復雜度高、任務周期長、數據實時性強、計算通用性差等方面的問題.因此,本研究認為大數據帶來的問題對計算系統的系統架構、計算框架、處理方法等提出了新的挑戰.

依靠超級計算機搭建大數據中心,是目前的主流發展趨勢之一.超級計算機具有高性能的優勢,能為大數據處理提供高效的計算能力.自20世紀70年代起,超級計算機便作為國家戰略資源而存在,是解決國家經濟建設、科學進步、社會發展、國防安全等一系列巨大挑戰的重要技術手段,也是國家科技水平、國家競爭力的重要體現.由國防科學技術大學研制的天河二號超級計算機,以每秒3.39億億次的浮點運算速度連續五次摘得全球運行速度最快的超級計算機桂冠.但是,超級計算機所擅長的領域是以科學與工程計算為主的計算密集型任務,計算模式具有單一性的特點.而大數據處理通常包含批處理計算、流式計算、迭代計算、圖計算等數據密集型計算模式,因此傳統的超級計算機難以直接應用于大數據的計算.

為了解決這一問題,近幾年所設計的超級計算機在體系結構、軟件等方面逐漸進行了改進.本研究首先對面向大數據應用的超級計算機所面臨的挑戰從軟硬件兩個方面進行分析,并介紹了國內外學者對大數據的研究現狀,最后闡述了天河二號超級計算機針對大數據處理所進行的改進,為大數據時代的超級計算機設計提供了有意義的參考.

1 大數據對超級計算機提出的挑戰及研究現狀

超級計算機能夠為大數據應用提供強大的計算能力、海量的存儲空間支持.但是,超級計算機是面向高性能計算設計的計算系統,高性能計算與大數據處理存在多方面差異. 表1是從應用領域、密集型、數據存儲、軟件平臺等不同角度對高性能計算(high performance computing,HPC)應用和大數據應用特點的比較,可見超級計算機在處理大數據和高性能計算時所表現出的性能具有明顯的差異性.相對于Top500排名,為了表征超級計算機面向大數據應用的計算能力,2011年美國圣地亞哥國家實驗室與多家IT公司合作定義發布了Graph500排名[3].Graph500中使用的基準強調子系統之間的通信,是在一個無向圖中進行廣度優先搜索,而不是Top500中采用的雙精度浮點計算.基準計算核心有兩個:一是生成搜索圖,二是壓縮成稀疏結構CSR或CSC.

高性能計算十分注重節點的計算能力,而大數據應用的瓶頸在于數據通信.因而面向高性能計算設計的超級計算機服務于大數據應用存在一定的不足.接下來將從硬件體系結構和軟件架構兩個方面進行分析.

表1 大數據處理與高性能計算的比較Table 1 Comparison between big data processing and HPC

1.1硬件體系結構

1.1.1計算部件

大數據應用數據量大、計算簡單,因而計算的指令級并行較低,數據訪問開銷較大.將大數據應用部署在超級計算機上存在明顯的數據吞吐率與計算能力不匹配的問題.為了驗證處理器面向大數據應用的不足,上海交通大學梁曉峣團隊通過實驗對CPU架構進行研究,結果表明大數據應用將大部分時間都浪費在了數據內存訪問上[4].片上存儲架構不能很好地為大數據應用提供必要的支持,導致計算和存儲的失衡,浪費了計算能力.

面向大數據的處理器優化主要集中在兩個方面:一是解決計算能力問題.由于大數據對實時性要求較高,采用通用處理器很難滿足要求.為此,超級計算機采用異構并行處理器,即通用核與專業加速器相結合,利用加速器進行加速,增加各類計算任務中的數據級并行. Top500和Graph500的計算機大多采用CPU和協處理器混合的架構.協處理器具有很強的處理能力,但是從CPU到協處理器的數據延遲很嚴重.因此,通過軟件的數據劃分和硬件上將CPU與GPU放置在一個芯片等策略可以取得很好的優化效果.二是解決數據吞吐量與計算能力不匹配的問題,片上緩存的優化成為解決該問題的關鍵.大數據應用指令跳轉頻繁,且指令局部性差,因而可以適量減小指令緩存.同時大數據應用的數據很少被重復利用,而是在每次計算完之后就可以丟棄,因此應該注重對數據緩存的優化,建立處理器與二級緩存之間的數據通道,或者采用eDRAM代替緩存.

1.1.2存儲架構

將大數據應用移植到超級計算機上,數據局部性訪問特征變得尤其明顯,而內存和外存之間的I/O性能不匹配問題并未得到有效解決.目前最常見的大數據處理模式MapReduce需要將計算中間結果寫回磁盤中,導致系統的I/O開銷極大,不能滿足應用的實時性需求.針對這一問題,有以下3種解決途徑.

一是采用新型存儲器,建立新的存儲結構,縮小計算速度和存儲速度之間的差距.隨著以電阻隨機存儲器(resistive random access memory,RRAM)、鐵電隨機存儲器(ferroelectric random access memory,FeRAM)、相變存儲器(phase change memory,PCM)等為代表的新興非易失性存儲器(non-volatile memory,NVM)技術的發展,使得傳統的內存與存儲分離的界限逐漸變得模糊,推進了存儲技術的發展,為新型內存與存儲體系結構的產生打下了良好的基礎.基于新型存儲級內存(storage class memory,SCM)[5]和傳統動態隨機存儲器(dynamic random access memory,DRAM)設計的新型混合內存體系,能夠在保持成本和能耗優勢的前提下大幅提升內存容量,從而避免傳統計算設施上內存磁盤訪問模式中I/O能力受限的問題,大幅度提升大數據處理的時效性、吞吐量和性能.Dhiman等[6]和Ham等[7]分別提出了針對PCM的異構混合硬件架構,改進了架構的設計過程并降低了設計難度.非易失存儲器增加了存儲與計算之間的數據傳輸帶寬,而固態存儲減少了內存與存儲之間數據傳輸的延遲. Fusion-IO,Intel,RamSAN,SDSC和國防科學技術大學等國內外企業和研究單位都在閃存上開展了相關工作,且目前已有多臺超級計算機采用固態硬盤取代傳統的硬盤存儲,以提高訪問速度.

二是采用先進的3D封裝技術緩解存儲帶寬延遲問題.3D堆疊封裝技術是指單個封裝體內可以堆疊多個芯片,以實現存儲容量的倍增且數據傳輸更快,同時所占芯片的面積減小.采用該技術可以通過高速網絡接口訪問外部三維疊片封裝以消除讀寫瓶頸問題.從英特爾的3D三柵極晶體管,到三星3D垂直堆疊型結構NABND閃存芯片,再到類似多層堆疊的產品——HMC(hybrid memory cube)內存的出現,3D堆疊封裝技術逐漸走向成熟,并應用于工業界芯片生產.AMD(ATI)發布了采用20 nm工藝的3D堆疊高帶寬內存(high bandwidth memory,HBM);Nvidia也表示將在2016年引入3D封裝工藝;三星已批量投產全球第一款采用3D TSV立體硅穿孔封裝技術打造的DDR4內存條,其單條容量高達64 GB.

三是利用光互連技術取代傳統的電互連,這也是解決處理器訪問存儲瓶頸的有效解決方案之一.哥倫比亞大學長期致力于硅基光互連的研究,已成功研制出光互連交換芯片,并提出通過光互連解決存儲瓶頸的有效解決方案.研究結果表明,在相同功耗的前提下,10 Gbit/s調制速率的光互連訪存帶寬比目前最快的DRAM訪存帶寬提升了10倍以上.

1.1.3通信

大數據應用的一個顯著特點是節點之間數據交互頻繁,互連通信成為大數據應用的性能瓶頸.考慮到大數據的海量特性,一般采用多種存儲模式來支持數據存儲,如分布式共享存儲、集中存儲FC-SAN/IP-SAN等.而大數據應用數據通信量較大且數據通信較為頻繁,節點之間及節點與存儲設備之間的互連帶寬成為數據處理的瓶頸.因此,展開新的互連通信技術的研究變得尤為迫切.

為了提高節點之間的通信帶寬,可以采用以下兩個策略:一是設計軟硬件結合的多接口網絡芯片,采用用戶級別定義和零數據拷貝技術減少數據傳輸的延遲,該技術已被應用到多個超級計算機中;二是光互連技術為解決數據傳輸難題提供了新的契機.硅基光通信以波分多路復用的激光束為信息載體,通過控制電光調制器上的光學效應加載數字信號,經光波導管與光子開關的光速傳輸與路由,利用光電解調效應還原電信號,實現了片內高效數據傳輸.與傳統金屬互連介質相比,這種光互連方式具有天然的優勢,主要體現在不受距離影響的信號速率、基于波分復用的高帶寬通信以及接近零功耗的波導管傳輸等方面.英特爾與IBM科學家已經利用日漸成熟的硅基光子集成技術,在單顆芯片內成功集成了光波導管、電光調節器、光電解調器、光子開關等新型納米器件.光互連技術將有望解決數據中心芯片之間的海量數據通信問題.

1.2軟件架構

1.2.1數據存儲

大數據包含大量的結構化數據、半結構化數據和非結構化數據.結構化數據可以采用數據庫結構存儲,而半結構化和非結構化數據需要多種文件系統協調配合來存儲不同的大數據.超級計算機進行高性能計算和大數據分析是兩個完全不同的過程.執行高性能計算過程時,數據加載完畢后,不需要頻繁地與文件系統交互,因而單一分布式文件系統即可滿足要求.而對于大數據應用,數據的處理過程多種多樣,如批處理、流處理、圖處理等多類不同的處理過程,都需要不同文件系統的支持.因而,基于超級計算機的大數據處理平臺需要采用靈活多變的文件系統,以自適應的形式滿足多類復雜大數據應用.

非結構化數據的存儲方式一般為分布式文件系統.Google公司因業務需求提出GFS文件系統[8],通過應用層協助分離控制流和數據流以提升集群橫向擴展能力,實現對海量數據的高效可靠存儲.GFS由一個主控服務器、多個塊服務器(chunk server)和客戶端構成. 在GFS中文件被劃分為64 MB大小的chunk,由唯一的chunk句柄標識,塊服務器以普通的Linux文件形式將chunk存儲在磁盤中,為了保證可靠性,chunk會在不同的節點中復制多份,默認為3份.通過主控服務器維護系統的元數據信息,包括文件及chunk命名空間、文件到chunk之間的映射、每個chunk副本的位置信息.所有元數據都保存在Master服務器的內存中.基于GFS文件系統的思想,已有研究者構建了多個改進的文件系統.Apache構建了類GFS系統的HDFS分布式文件系統[9],阿里巴巴公司自主開發了分支ADFS[10],主要解決的是HDFS NameNode在設計上存在的單點故障、內存瓶頸以及因集群重啟時間過長而無法對集群進行寫操作等問題.ADFS的原理是將非熱點數據保存到外部數據庫而非常駐于NameNode內存中.清華大學和阿姆斯特丹自由大學合作研發的CloudTPS系統[11]能夠為分布式應用提供存儲支持.

對于結構化數據和半結構化數據,存儲方式主要為數據庫和分布式表結構.對于簡單的半結構化數據可以采用Key/Value分布式文件系統存儲,Key/Value為分布式表格的一種.Amazon公司基于電子消費類應用行為特征構建高可用和高可伸縮的分布式存儲系統Dynamo[12],該系統采用Key/Value方式存儲數據,并采用數據分塊最終一致性和一致性哈希等技術為上層應用提供Always-on體驗,同時保持高可用和橫向擴展能力.早期由Facebook開發的Cassandra系統[13]借鑒不同研究成果以Key/Value方式構建分布式存儲平臺,從而提供更好的擴展性和一致性.由于大數據應用的數據量大和實時處理的需求,使得傳統數據庫(如MySQL,PostgreSQL)已經無法滿足用戶對于結構化數據存儲的系統需求. Google公司提出BigTable分布式類數據庫系統[14],引領了NoSQL潮流,這種存儲方案被用于Google公司內部多個項目中,如搜索系統的海量數據存儲、用戶請求的日志管理等,支持公司的大數據產品.之后在存儲領域涌現了增量索引平臺Percolator[15]和全球級分布式數據庫Spannor[16]等.HBase數據庫[17]基于BigTable的設計思想,在HDFS的基礎上構建,能提供較為接近傳統數據庫的支持.OceanBase數據庫[18]是阿里巴巴公司自主研發的可擴展的關系型數據庫,實現了跨行和跨表的事務支持,能夠在數千億條記錄、數百TB數據上進行傳統SQL操作.

在分布式存儲管理方面也出現了一些典型的系統.Memcached系統[19]是一種高性能的分布式內存緩存服務系統,最初由Danga Interactive為了LiveJournal所發展,目前已被mixi,hatena,Facebook,Vox,LiveJournal等公司廣泛采用,用以提高Web應用擴展性.Redis數據庫[20]是一種非關系型內存數據庫,采用與Memcahed,Redis類似的鍵值存儲,可以達到很好的存儲性能.RAMCloud技術[21]是由斯坦福大學的John Ousterhout在2009年提出的基于內存的存儲管理技術.鑒于面向磁盤的在線存儲存在諸多問題,如擴展性、性能瓶頸,RAMCloud技術采用的解決方法是建立一個以DRAM為主的數據存儲中心,將所有的信息都保存在DRAM中,利用商業服務器集群構成一個大規模存儲系統.與磁盤的存儲系統相比,該系統至少能提高100~1 000倍的帶寬和100~1 000倍的低延遲.

1.2.2編程模型

大數據應用同樣給編程模型帶來了新的挑戰.這些挑戰主要來自編程簡單性與性能優化之間的沖突.為了編程的簡單性,編程模型應為開發人員提供一個簡潔而強大的編程抽象,使開發人員可以輕松地編寫能在成百上千臺計算機上并行執行的程序,開發人員只需關注要解決的問題,不需要關心應用程序在大規模集群上運行的細節(如數據分布、調度任務和處理容錯等).編程模型對開發人員隱藏這些細節,有助于應用程序清晰地表達對數據的處理過程,使代碼更容易理解、重用和維護,從而最大程度地減輕了開發人員編程的負擔.而對于編程模型的性能優化而言,編程模型通常管理整個集群的資源,除了要保證應用程序在大規模集群上能夠高效率、高可靠和可擴展地運行,還要允許多個作業并發運行、共享集群資源,以提高整個集群的資源利用率和作業的吞吐量.在大規模集群系統上高效地實現一個編程抽象會面臨很多挑戰.例如,如何盡量利用數據本地性以減少網絡傳輸,如何解決機器的異構性問題,如何保證作業之間的公平性等.在設計編程模型的任務調度和作業調度時,通常需要考慮多種因素并作出權衡折中.因此,針對大數據應用的需求,設計高效、簡潔、可靠的并行編程模型也是一大挑戰.

超級計算機一般采用OpenMP,MPI等并行編程模型.OpenMP采用共享存儲模式,適用于對稱多處理器(symmetrical multi-pocessing,SMP)、分布式共享內存(distributed shared memory,DSM)等架構的機器.MPI是基于消息傳遞的計算模型,編程模型較復雜,需要程序員自行分析及劃分應用程序問題,并將問題映射到分布式進程集合.可見這兩種編程模型并不適用于大數據應用.因此,若干互聯網公司都各自研發了應用于大數據處理的編程模型,以解決上述各種挑戰性問題.

MapReduce系統是Google公司面向PB規模級數據提出的基于數據進行并行計算的模型,它提供了簡單的API接口,能夠自動進行并行化、容錯處理、數據切分等工作,簡化了大數據并行程序的編寫.MapReduce系統主要由兩部分組成:Map和Reduce. MapReduce的核心思想在于“分而治之”,也就是說,先將數據源分為若干部分,每個部分對應一個初始的鍵值(Key/Value)對,并分別由不同的Map任務區處理,產生一系列中間結果鍵值(Key/Value)對,MapReduce的中間過程Shuffle將所有具有相同Key值的Value值組成一個集合傳遞給Reduce環節;Reduce接收這些中間結果,并將相同的Value值合并,形成最終的較小Value值的集合.而面向超級計算機的異構平臺,MapReduce計算框架仍需要改進.Mars框架[22]是由香港科技大學研究人員提出的最早的基于單GPU節點實現的MapReduce計算框架.而后,MapCG[23],Grex[24],Mithra[25],GPMR[26]等對MapReduce進行了大量改進工作,充分發揮了大量的GPU集群節點的優勢,同時利用共享內存等技術減少了CPU與GPU之間的I/O數據傳輸延遲.MrPhi[27]首先實現了在單MIC節點的MapReduce框架,而后擴展到了MIC集群中[28].

同時,在新型的內存計算體系結構中,現有的MapReduce并不能充分利用大規模的異構內存,從而難以控制和有效利用數據的局部性.為了將中間數據保存在內存而非外存中,以避免過多的內外存I/O,加州大學伯克利分校的研究人員提出了可恢復分布式數據集(resilient distributed datasets,RDDs)[29]來抽象分布式內存系統,并且利用RDDs實現了Spark內存計算系統.Phoenix[30]是斯坦福大學研究人員開發的基于多核/多處理器、共享內存的MapReduce實現,其目標是在多核平臺上,使程序執行得更高效,而且使程序員不必關心并發的管理.在大數據處理應用中,不少場景存在依賴關系的作業,比如Pig[31]和Hive[32]產生的MapReduce作業.為優化依賴作業對磁盤和網絡I/O操作效率,Hortonworks開發了DAG計算框架Tez[33].該框架的核心思想是將Map和Reduce兩個操作分成更小的元操作,可以靈活組合產生新的操作,并經控制程序組裝后形成大的DAG作業.

綜上所述,大數據應用給超級計算機帶來了軟件、硬件結構等方面的挑戰,而目前學術界和工業界針對這些挑戰提出了各種各樣的解決方案,并取得了一定的成果.

2 天河二號超級計算機的大數據求解之道

下面將以天河二號超級計算機(以下簡稱天河二號)為例,分析在大數據時代下超級計算機應采取哪些優化措施應對大數據處理帶來的挑戰.針對大數據處理,天河二號采用的優化措施包括互連通信優化、I/O增強及軟件棧增強等技術.目前,天河二號計算機系統的互連通信已升級成TH-Express 2+高速網絡技術,該通信網絡能提供更高的通信性能和TCP/IP協議數據傳輸性能[34-35].在I/O系統中,通過部署混合的存儲結構和層次式的文件系統來提高I/O吞吐能力.在天河二號上提供異構MapReduce并行處理框架,支持CPU和MIC的混合MapReduce處理能力.

天河二號超級計算機系統在國家高技術研究發展計劃(863計劃)的支持下,由國防科學技術大學研制,廣東省及廣州市政府提供了研制經費和配套設施支持.天河二號峰值計算速度達5.49億億次/s,持續計算速度達3.39億億次/s,能效比達到每瓦19億次雙精度浮點運算.天河二號的定位是同時滿足高性能計算、高吞吐率信息服務和海量數據處理等多領域復雜應用需求,在系統設計過程中,專門針對大數據領域的應用特征進行了多項體系結構調優,包括I/O增強、軟件棧增強、通信協議增強及并行處理模式優化等.

2.1計算節點優化——異構多態體系結構

天河二號的計算陣列共16 000個計算節點,每個計算節點包含2個Intel Xeon處理器和3個MIC眾核協處理器.節點通過自主設計的網絡接口芯片(network interface chip,NIC)連接到高速互連網絡.節點包含4個高速PCIE總線,其中3個連接MIC,一個連接NIC. CPU和MIC眾核協處理器都基于X86架構,具有相似的指令集架構,因此能夠支持統一的編程模型,本研究將此混合架構設計為“微異構計算體系結構”.CPU和MIC眾核協處理器協同計算,既可以提高系統的能效比,又能保證應用程序的兼容性、適用性和易用性.

圖1 計算節點邏輯結構Fig.1 Computing node structure

計算節點邏輯結構如圖1所示,2個CPU通過兩路QPI信號直接連接,每個CPU設計4個通道,共8個DIMM插座,如果采用16 GB內存條,最大可支持128 GB DDR3內存. CPU0通過PCH(platform controller hub)芯片進行外圍擴展,引出一個PCIE 16X接口連接自主研發的高速互連網絡接口芯片NIO,同時引出一個PCIE 16X接口連接MIC眾核協處理器.CPU1引出2個PCIE 16X接口連接2個MIC眾核協處理器.每個節點連接3個MIC眾核協處理器.

基于商用CPU的計算節點采用主頻2.2 GHz的Ivy Bridge CPU,集成12個處理器核,單核支持256位寬的SIMD操作(4個雙精度浮點操作),直接在CPU內部集成PCIE控制器,集成4通道DDR3存儲控制器,提供2個傳輸率為8 GT/s的QPI接口,支持2路處理器直連構成SMP系統,同時采用高級向量擴展(advanced vector extensions,AVX)指令集,在性能得到大幅提升的同時保持了更高的訪存、通信和I/O帶寬.

MIC協處理器包含57個物理核,運行頻率為1.1 GHz,單核支持512位寬的SIMD操作(8個雙精度浮點操作),同時支持FMA三元乘加操作,雙精度浮點峰值性能達到了1.003 TFlops.

2.2網絡通信優化——TH-Express 2+

TH-Express 2+互連通信網絡主要由兩種芯片組成:一種是網絡接口芯片(NIC),NIC提供了主機系統軟硬件編程接口.相對于上一代互連,NIC的端口速率提高到了14 Gbit/s,并且在功能上進行了擴展,進一步提高了消息速率和數據傳輸的可靠性,為提高并行應用的性能和運行穩定性提供了良好的支持.另一種是網絡路由芯片(network router chip,NRC),NRC采用高階路由設計技術,內部集成了24個端口,吞吐率達到5.376 Tbit/s.NRC支持兩種路由協議,即顯式路由和基于胖樹的多路徑自適應路由,可以在大規模部署條件下,減少網絡擁塞沖突,提高互連網絡的吞吐率.

圖2 TH-Express 2+網絡互連拓撲圖Fig.2 TH-Express 2+network topology

TH-Express 2+互連網絡實現為三層胖樹拓撲結構(見圖2).采用這種拓撲結構的原因是,胖樹能獲得很高的雙向帶寬,使每個節點的雙向帶寬等于節點的注入帶寬.在第一層中,以32個計算節點作為計算框,接入一塊被稱為NRM的交換板上,形成一級子樹,NRM板上行方向通過20個端口連接葉交換機;在第二層中,葉交換機由一個24口交換板構成,其中下行12個光模塊接口接入12個計算框,上行12個光模塊接口接入根交換機.從葉交換機角度來看,上行鏈路和下行鏈路帶寬相等,構成帶寬均衡的層次結構;在第三層中,根交換機由兩個24口交換板構成48端口交換機,每個根交換機連接到48個不同的葉交換機上.葉交換機和根交換機通過一個獨立的路由機柜連接在一起.

在TH-Express 2+互連網絡的硬件協議層次中集成了多種通信協議,使得并行應用、網絡服務、云平臺服務和大數據應用能夠同時運行在天河二號之上.天河二號上的MPI并行編程環境符合MPI 3.0標準.通過系統實現中采用的一些協議優化技術,有效提高了并行應用的可擴展性.在實際性能測試中,MPI的點到點通信延遲少于1μs,帶寬達到12 Gbit/s,而雙向帶寬則達到23 Gbit/s,這為提高大數據并行應用的運行效率提供了良好的支持.

在TH-Express 2+網絡體系結構中,底層為基于RDMA[36-37]的物理網絡結構.為了滿足大部分企業應用,尤其是大數據應用,TH-Express 2+專門設計了針對TCP/IP協議的支持機制,以實現在物理節點或虛擬節點之間提供基于TCP/IP的高帶寬通信機制.TH-Express 2+ 在RDMA物理網絡基礎設施之上虛擬了一套層疊的網絡通信機制,采用mixed-up和poll packets接收方法高效處理報文.同時,通過地址主動注冊/地址單播查詢機制替代ARP廣播,從而在很大程度上提高了大規模二層網絡環境下的網絡整體性能.另外,在進行TCP/IP傳輸過程中,將TSO[38]數據作為一個整體通過底層的RDMA機制進行傳輸,進一步提高了單播通信的處理能力.因此,對于單個通信流,可獲得高達42 Gbit/s的TCP/IP實測帶寬.

圖3 基于TH-Express 2+的TCP/IP協議Fig.3 TH-Express 2+TCP/IP protocol

RDMA物理層承載多個層疊的虛擬網絡,不同的層疊虛擬網絡可用于不同目的,如用于虛擬節點的資源管理和控制、虛擬節點間的業務通信等.最上層通過虛擬化技術和層疊的虛擬網絡承載了大量的虛擬機,而大數據應用和企業應用運行于虛擬機內.層疊虛擬網絡可以使單個物理節點獲得高達42 Gbit/s的TCP/IP實測帶寬,而單個虛擬節點可獲得高達10 Gbit/s的TCP/IP實測帶寬,也就是說,即使是虛擬節點間的通信也獲得了萬兆網絡的通信能力.在第二層互連網絡中,可管理的節點規模超過了8 000個,可很好地滿足云計算大二層網絡[39]的要求,更有利于資源的彈性分配和調度.

基于TH-Express 2+的TCP/IP協議具有以下特征:①高性能.如前文所述,所采用的廣播消除技術使得ARP地址查詢對大規模網絡的影響盡可能小.采用RDMA直接承載TSO數據,將一次TSO數據作為整體發送,這大大提高了TCP的傳輸能力,使得物理節點間可獲得42 Gbit/s的單流TCP性能,虛擬節點間可獲得10 Gbit/s的單流TCP性能.②高可用性.盡管從用戶角度來看,承載網絡的基礎設施非常類似于互聯網,但是其內部卻采用了不同的工作機制.為了獲得高可用性,對虛擬化設備如虛擬交換機,采用主備的方式進行容錯.當出現失效時,計算節點將重新向備用虛擬交換機注冊單播地址和多播成員關系,以恢復網絡基礎信息.③靈活性.通過虛擬網絡分區技術,不同的層疊網絡可獨立地按需創建,并根據應用選擇滿足自身需求的層疊網絡參數,靈活的網絡創建機制可滿足多種應用的承載需求.

2.3存儲結構優化——混合層次式文件系統

大數據和超級計算應用都驅動著I/O的發展,使得I/O瓶頸變得尤為突出.傳統基于對象存儲架構的Lustre文件系統是一款被廣泛采用并部署的開源并行文件系統,其特點突出,但無法完全滿足各類科學計算應用和大數據應用的多樣性I/O需求.在大數據時代,需要增強超算系統現有的存儲架構,并采用新的并行I/O技術.因此,其他一些新穎的存儲機制也已部署到天河二號上,如Flash,NVM等.很明顯,用一種并行的文件系統滿足所有的應用并不現實,要采用更多靈活的I/O存儲文件系統來滿足不同的大數據應用需求.

如圖4所示,天河二號系統部署了一種混合的、層次式存儲結構,將6.4 PB的本地磁盤用于大數據應用,由512 TB的SSD盤組成過渡存儲層.該存儲結構用于數據密集型的應用,讀寫速度達到了1 Tbit/s;而128個集中存儲服務器負責I/O輸出,讀寫速度達到了100 Gbit/s. SSD快速存儲能提供相當高的I/O性能,能很好地平衡計算和存儲服務器的I/O需求.

圖4 混合存儲結構Fig.4 Hybrid storage structure

基于混合存儲結構,在天河二號系統中設計實現了混合層次式文件系統(hybrid storage structure,H2FS),該文件系統融合分布的局部存儲資源和基于對象存儲架構的共享全局存儲資源,充分利用ION(I/O服務節點)的本地存儲,能滿足應用程序瞬時I/O操作的性能需求,并將其和全局存儲系統構建成一個統一的命名空間,使用戶獲得多類型存儲介質的好處,并同時保持使用方式的兼容性.

圖5給出了H2FS結構的關鍵組件,其中最基本的組件是一個用戶級RDMA通信協議,用于I/O數據傳輸.在TH-Express 2+網絡上,該組件具有較好的RPC率,使得SSD的性能優勢得以充分利用.另外一個組件是混合虛擬命名空間模塊(HVN),它能夠在任務運行時動態構建輕量化的I/O軟件棧,針對不同應用場景的I/O特點,例如寫密集型、讀密集型、元數據密集型、小文件或者大文件等特定需求,分別使用相應的優化方法,有效地加速不同應用的I/O過程,這種方法有利于解決在大規模并發條件下復雜I/O棧開銷過大、擴展性受限等問題.

2.4混合計算框架優化—-異構Map/Reduce框架

隨著高性能協處理器的迅速發展,針對異構硬件平臺的MapReduce框架在學術界和工業界被廣泛研究和使用.針對天河二號的異構結構,本研究優化設計了MapReduce框架——MicMR[40](見圖6),使其成為目前第一個支持MIC的大規模數據并行處理框架.考慮系統的縮放性和效率,設計了能管理不同資源的CPU worker和MIC worker.MIC worker承擔著以下兩部分工作:①負責分發新任務到MIC上;②接收來自MIC的計算結果.由于CPU和MIC具有不同的計算效能,因此所有計算單元動態獲取任務,以達到負載均衡.

圖5 H2FS結構Fig.5 H2FS structure

圖6 異構的Map/Reduce框架Fig.6 Heterogeneous Map/Reduce framework

Reduce worker以并行模式工作,故能夠支持map和reduce同時工作.另外,本研究設計了一種MIC令牌機制,令牌能隨著MIC協處理器的狀態而動態改變.若MIC協處理器出現失效,相對應的令牌也會刪除,以此有效管理MIC協處理器.

為了更有效率地利用MIC,本研究設計了友好的SIMD映射模型,該模型能更充分地利用MIC上的VPUs.模型中的每個數據塊被劃分成一個向量,該向量能被VPUs以SIMD的處理模式進行處理.在這個過程中,采用兩種存儲緩存方式來存儲MIC計算后的中間結果:一種是陣列緩存,這種緩存模式采用獨立的存儲區域,線程同步沒有線程鎖,也不支持原子操作;另一種是組合緩存(combine buffer),對于計算結果的存儲,所有數據塊共享相同的存儲區域.實驗結果顯示,reduce過程能得到1.1~1.4倍的加速,而SIMD友好映射過程能得到1.0~8.2倍的加速.與常規的Hadoop相比,不同應用在天河二號上能獲得2.4~8.1倍的加速.

3 結束語

目前,天河二號超級計算機在高性能計算領域已經取得了很好的效果,隨著海量應用在天河二號上聚集,不可避免地會有大量大數據應用要部署在超級計算機中,構成一個大的數據中心.首先,通過對應用的深入了解,可以更好地利用已有的系統,如空氣動力學、生物工程、大數據等,都已經取得了很好的效果;其次,為了滿足大數據應用,大數據時代的超級計算機可能融入更多新興的體系結構,如眾核/多核、快速存儲/NVM等;再次,更高性能的互連網絡能有效解決超級計算機部署大數據應用時的網絡帶寬瓶頸,包括可重構網絡拓撲技術和最優網絡互連技術等.此外,為了滿足更多大數據應用,層次式的I/O結構也將成為超級計算機的另一個新的技術儲備.總之,在大數據時代,超級計算機的計算類型將由計算密集型逐漸轉向數據密集型,對其上數據及數據生命周期的管理變得尤為重要.

[1]Big data and big data analytics:significance for the hardcopy industry[EB/OL].[2015-10-19]. http://www.idc.com/getdoc.jsp?containerId=246831.

[2]IDC's worldwide big data taxonomy[EB/OL].[2015-10-19].http://www.idc.com/getdoc. jsp?containerId=254052.

[3]Graph500[EB/OL].[2015-10-19].http://www.graph500.org.

[4]JING N F,SHEN Y,LU Y,et al.An energy-efficient and scalable eDRAM-based register file architecture for GPGPU[C]//Processing of International Symposiumon Computer Architecture. 2013:344-355.

[5]LAM C H.Storage class memory[C]//Processing of 2010 10th IEEE International Conference on Solid-State and Integrated Circuit Technology(ICSICT).2010:1080-1083.

[6]DHIMAN G,AYOUB R,ROSING T.PDRAM:a hybrid PRAM and DRAM main memory system[C]//Processing of Design Automation Conference.2009:664-669.

[7]HAM T J,CHELEPALLI B K,NENG X,et al.Disintegrated control for energy-efficient and heterogeneous memory systems[C]//Processing of IEEE International Symposium on High Performance Computer Architecture.2013:424-435.

[8]GHEMAWAT S,GOBIOFF H,LEUNG S T.The google file system[C]//Processing of ACM SIGOPS Operating Systems Review.2003:29-43.

[9]HDFS[EB/OL].[2015-10-19].http://hadoop.apache.org/hdfs/docs/current/hdfs design.html.

[10]ADFS[EB/OL].[2015-10-19].http://github.com/taobao/ADFS.

[11]ZHOU W,PIERRE G,CHI C H.Scalable transactions for web applications in the cloud[J].Lecture Notes in Computer Science,2009,5(4):525-539.

[12]DECANDIA G,HASTORUN D,JAMPANI M,et al.Dynamo:amazon's highly available key-value store[J].Proc Sosp,2007,41(6):205-220.

[13]Cassandra[EB/OL].[2015-10-19].http://cassandra.apache.rog.

[14]CHEN C,HSIAO M.Bigtable:a distributed storage system for structured data[C]//Proceedings of OSDI.2006:205-218.

[15]PENG D,DABEK F.Large-scale incremental processing using distributed transactions and notifications[C]//Usenix Symposium on Operating Systems Design and Implementation.2010:4-6.

[16]COOPER B F.Spanner:Google's globally-distributed database[C]//Proceedings of the 6th International Systems and Storage Conference.2013:1-10.

[17]Hbase[EB/OL].[2015-10-19].http://hbase.apache.org/.

[18]OceanBase[EB/OL].[2015-10-19].http://alibaba.github.io/oceanbase.

[19]Memcached[EB/OL].[2015-10-19].http://www.memcached.org/.

[20]Redis[EB/OL].2013-03-25[2015-10-19].http://www.redis.io/.

[21]OUSTERHOUT J,AGRAWAL P,ERICKSON D,et al.The case for RAMCloud[J].Communications of the Acm,2011,54(7):121-130.

[22]HE B S,FANG W B,LUO Q,et al.Mars:a MapReduce framework on graphics processors [C]//Processing of 17th International Conference on Parallel Architectures and Compilation Techniques(PACT).2008:260-269.

[23]HONG C T,CHEN D H,CHEN W G,et al.MapCG:writing parallel program portable between CPU and GPU[C]//PACT.2010:217-226.

[24]BASARAN C,KANG K D.Grex:an e cient Map/Reduce framework for graphics processing units[J].Journal of Parallel and Distributed Computing,2013,73(4):522-533.

[25]FARIVAR R,VERMA A,CHAN E M,et al.MITHRA:multiple data independent tasks on a heterogeneous resource architecture[C]//Processing of IEEE Conference on Cluster Computing. 2009:1-10.

[26]STUART J A,OWENS J D.Multi-GPU MapReduce on GPU clusters[C]//IPDPS.2011:1068-1079.

[27]LU M,ZHANG L,HUYNH H P,et al.Optimizing the Map/Reduce framework on intel xeon phi coprocessor[C]//2013 IEEE International Conference on Big Data.2013:125-130.

[28]LU M,LIANG Y,HUYNH H,et al.Mrphi:an optimized Map/Reduce framework on intel xeon phi coprocessors[J].IEEE Transactions on Parallel and Distributed Systems,2015,26(11):3066-3078.

[29]ZAHARIA M,CHOWDHURY M,DAS T,et al.Resilient distributed datasets:a fault-tolerant abstraction for in-memory cluster computing[C]//Proceedings of the 9th USENIX Conference on Networked Systems Design and Implementation.2012:141-146.

[30]YOO R M,ROMANO A,KOZYRAKIS C.Phoenix rebirth:scalable Map/Reduce on a largescale shared-memory system[C]//Proceedings of IEEE International Symposium on Workload Characterization.2009:198-207.

[31]GATES A F,NATKOVICH O,CHOPRA S,et al.Building a high-level dataflow system on top of Map-Reduce:the Pig experience[C]//Proceedings of the VLDB Endowment 2.2.2009:1414-1425.

[32]THUSOO A,SARMA J S,JAIN N,et al.Hive:a warehousing solution over a map-reduce framework[C]//Proceedings of the VLDB Endowment 2.2.2009:1626-1629.

[33]Taz[EB/OL].[2015-10-19].http://hortonworks.com/blog/introducing-tez-faster-hadoopprocessing/.

[34]PANG Z B,XIE M,ZHANG J,et al.The TH Express high performance interconnect networks[J].Frontiers of Computer Science,2014,8(3):357-366.

[35]LIAO X K,PANG Z B,WANG K F,et al.High performance interconnect network for Tianhe system[J].Journal of Computer Science and Technology,2015,30(2):259-272.

[36]HUANG W,GAO Q,LIU J,et al.High performance virtual machine migration with RDMA over modern interconnects[C]//2007 IEEE International Conference on Cluster Computing.2007:11-20.

[37]GAVRILOVSKA A,KUMAR S,SUNDARAGOPALAN S,et al.Platform overlays:enabling in-network stream processing in large-scale distributed applications[C]//Proceedings of the International Workshop on Network and Operating Systems Support for Digital Audio and Video.2005:171-176.

[38]REGNIER G,MAKINENI S,ILLIKKAL R,et al.TCP onloading for data center servers[J].Computer,2004(11):48-58.

[39]ZHANGQ,CHENGL,BOUTABAR.Cloudcomputing: state-of-the-artandresearch challenges[J].Journal of Internet Services and Applications,2010,1(1):7-18.

[40]WANG W Z,WU Q B,TAN Y S,et al.Optimizing the MapReduce framework for CPU-MIC heterogeneous cluster[C]//2015 International Conference on Advanced Parallel Processing Technology.2015:33-44.

On the challenge for supercomputer design in the big data era

LIAO Xiangke,TAN Yusong,LU Yutong,XIE Min,
ZHOU Enqiang,HUANG Jie
(School of Computer,National University of Defense Technology,Changsha 410073,China)

Because traditional supercomputer is designed for high-performance computing,big data processing applications brings some software and hardware challenges including compute,storage,communication and programming.This paper introduces optimization methods of Tianhe-2 supercomputer system to process big data,such as a new heterogeneous polymorphic architecture,custom high-speed TH-Express 2+interconnection network,hybrid hierarchical storage system and hybrid computing pattern framework.These efforts maybe make help for how to design supercomputers in the age of big data.

big data;supercomputer;Tianhe-2

TP 338

A

1007-2861(2016)01-0003-14

10.3969/j.issn.1007-2861.2015.03.014

2015-12-23

國家高技術研究發展計劃(863計劃)資助項目(2013AA01A212)

廖湘科(1963—),男,教授,中國工程院院士,博士生導師,研究方向為超級計算機. E-mail:xkliao@nudt.edu.cn

主站蜘蛛池模板: 六月婷婷综合| 久久夜色撩人精品国产| 一级毛片不卡片免费观看| 亚洲热线99精品视频| 天天操天天噜| 波多野结衣久久高清免费| 波多野结衣在线se| 欧美激情一区二区三区成人| 日韩黄色在线| 国产男女免费完整版视频| 色综合热无码热国产| 久无码久无码av无码| 狠狠亚洲五月天| 国产爽妇精品| 久久激情影院| 最新国产精品鲁鲁免费视频| 精品国产污污免费网站| 91丝袜乱伦| 激情综合激情| 综合天天色| 99热这里只有精品免费国产| 67194在线午夜亚洲| 黑人巨大精品欧美一区二区区| 免费啪啪网址| 日本免费高清一区| 伊人无码视屏| 在线免费观看a视频| 国产h视频免费观看| 91精品视频播放| 国产精品真实对白精彩久久| 尤物国产在线| 在线中文字幕网| 人妻免费无码不卡视频| 国产综合网站| 精品国产成人高清在线| 国产精品亚洲专区一区| 亚洲男人天堂网址| 欧美精品伊人久久| 综合亚洲网| 四虎国产精品永久一区| 免费高清自慰一区二区三区| 天天综合网在线| 草逼视频国产| 一级毛片免费不卡在线| 欧美日韩一区二区三区在线视频| 综合网天天| 免费人成在线观看视频色| 韩国自拍偷自拍亚洲精品| 国产人成在线视频| 亚洲中文字幕手机在线第一页| 亚洲欧美不卡| 国产美女精品人人做人人爽| 国产成人三级| 911亚洲精品| 五月婷婷综合色| 久996视频精品免费观看| 亚洲无码电影| 亚洲一区二区精品无码久久久| 亚洲美女一区二区三区| 免费一级毛片| 在线播放国产一区| 97狠狠操| 欧美中文一区| 国产视频a| 久久久久国产精品嫩草影院| 国产香蕉在线视频| 午夜一区二区三区| 亚洲精品无码人妻无码| 青草午夜精品视频在线观看| 久久综合干| 大陆精大陆国产国语精品1024| 九色视频在线免费观看| 91精品网站| 亚洲精品制服丝袜二区| 91精品国产自产在线老师啪l| 亚洲国产精品久久久久秋霞影院| 亚洲无线观看| 制服无码网站| 亚洲美女视频一区| 国产激爽大片高清在线观看| 欧洲av毛片| 午夜精品久久久久久久99热下载 |