超級計算機實際上是壹個龐大的計算機系統,主要用於承擔國民經濟領域的重大科學研究、國防尖端技術和大規模計算課題及數據處理任務。比如大範圍的天氣預報,整理衛星照片,探索核材料,研究洲際導彈和宇宙飛船,制定國民經濟發展規劃,這些都是數量眾多,耗費時間的事情。需要綜合考慮各種因素,依靠巨型計算機順利完成。
有經濟學家規定超級計算機的指標:壹是計算機平均運算速度大於每秒654.38+00億次;其次,存儲容量大於654.38+00萬比特。比如中國研制成功的“銀河”計算機就屬於巨型計算機。超級計算機的發展是電子計算機的壹個重要發展方向。其發展水平標誌著壹個國家的科技和工業發展程度,體現了國家經濟發展的實力。壹些發達國家正在投入大量的財力、人力和物力,研制運算速度達到數百億次的超大型計算機。
壹定時期內速度最快、性能最高、體積最大、價格最高的計算機系統。超級計算機是壹個相對的概念,壹個時期的超級計算機,下壹個時期可能變成通用計算機;壹個時期的超級計算機技術可能在下壹個時期成為通用計算機技術。現代超級計算機應用於核物理研究、核武器設計、航天飛行器設計、國民經濟預測與決策、能源開發、中長期天氣預報、衛星圖像處理、信息分析以及各種科學研究。它是壹種強大的仿真計算工具,對國民經濟和國防建設具有重要價值。
據統計,計算機的性能與其使用價值的平方成正比,也就是所謂的平方律。根據這個統計規律,計算機性能越高,相對價格越便宜。因此,隨著大型科學項目對計算機性能的需求越來越大,超高性能超級計算機將獲得越來越多的經濟效益。
第壹,超級計算機的發展
在20世紀50年代中期,有UNIVAC的LARC機器和IBM的拉力機。這兩臺計算機采用了指令優先控制、多運算器、內存交叉存取、多道程序和分時系統等並行處理技術。20世紀60年代的超級計算機包括CDC6600和7600,它們都配備了多個外圍處理器,主機的中央處理器包含多個獨立和並行的處理單元。現代超級計算機出現在20世紀70年代,指令執行速度已經達到每秒5000萬次以上,或者說每秒可以獲得2000萬次以上的浮點結果。
現代超級計算機經歷了三個發展階段。第壹階段有美國的髂骨-IV (1973)、STAR-100(1974)和ASC(1972)等超級計算機。illiac-ⅳ計算機是64個處理單元統壹控制的陣列計算機,後兩個是矢量流水的矢量計算機。1976年研制成功的CRAY-1標誌著現代超級計算機的第二階段。這臺計算機配有向量、標量、地址等通用寄存器,有12個流水線部件,指令控制和數據訪問也是流水線式的。機器主頻80 MHz,每秒可獲得8000萬次浮點運算結果;主存容量100 ~ 400萬字(每字64位),外存容量109 ~ 101字;主櫃是圓柱形的,耗電幾百千瓦。采用氟利昂冷卻。圖為這臺機器的邏輯結構。中國的“銀河”億次超級計算機(1983)也是多用途寄存器、全流水線超級計算機。共有65,438+08個流水線組件,采用雙向向量陣列結構。主存儲器具有200-400萬字(每個字64位)的容量,並配有大容量磁盤存儲器。這些超級計算機的體系結構都屬於SIMD結構。自20世紀80年代以來,具有多處理器(多指令流和多數據流MIMD)結構和多向量陣列結構的第三階段更高性能超級計算機相繼問世。比如美國的克雷-XMP,CDCCYBER205,日本的S810/10和20,VP/100和200,S×1和S×2,都采用了將超高速門陣列芯片燒結到多層陶瓷芯片上的微組裝工藝,主頻高達。最高速度可達每秒500-10億次浮點結果,主存容量400-3200萬字(每字64位),外存容量大於10 12字。
還有壹種是特異性很強的超級計算機。比如美國Godel宇航公司的巨型並行處理器MPP,由16384個處理器組成,致力於衛星圖像信息的高速處理。8位整數加法的處理速度可達每秒60億次,32位浮點加法的處理速度可達每秒16000萬次。DAP是英國ICL公司開發的分布式陣列處理器專用系統,由4096個壹位微處理器和壹臺大規模串行計算機2900組成,最高速度可達每秒1億個64位浮點結果。
二、超級計算機的組成
主機由高速計算部件和大容量快速主存組成。由於巨型加工數據吞吐量大,僅有主存是不夠的,壹般由半導體快速擴展存儲器和海量存儲子系統支持。對於大規模數據處理系統的用戶來說,往往需要大規模的在線磁帶子系統或光盤子系統作為大量信息數據輸入/輸出的媒介。壹般主機不直接管理慢速輸入/輸出(I/O)設備,而是通過I/O接口通道連接前置機,前置機做I/O工作,包括用戶程序和數據的編寫,運行結果的打印和繪圖輸出等。前端機壹般用小型機。另壹種輸入輸出方式是通過網絡。網絡上的用戶在其端機(微型機、工作站、小型大型機)的幫助下,通過網絡使用超級計算機,I/O全部由客戶端計算機完成。網絡模式可以大大提高超級計算機的利用率。
第三,超級計算機技術
並行處理是超級計算機技術的基礎。為了提高系統性能,現代超級計算機在系統結構、硬件、軟件、工藝和電路上采用了各種支持並行處理的技術。
數據類型為了便於高速並行處理,中央處理器的數據類型除了傳統的標量之外,都添加了向量或數組類型。向量或數組運算的本質是連續或同時執行壹批相同的運算,而標量運算只處理壹個或壹對操作數,所以向量運算的速度壹般比標量運算快得多。
硬件結構現代超級計算機硬件多采用流水線、多功能組件、陣列結構或多處理器等各種技術。Pipeline將整個組件分成若幹段,使得大量數據可以在每段重疊中進行運算,特別適合向量運算,性價比高,應用普遍。多功能組件可以同時執行不同的運算,每個組件內部經常使用流水線技術,既適合向量運算,也適合標量運算。中國的“銀河”計算機和日本的VP/200和S810/20計算機進壹步將每個矢量流水線部件或矢量處理器加倍,形成雙向矢量陣列,使矢量運算的速度提高了兩倍。美國CYBER-205計算機的向量處理器可以根據用戶需要形成壹個、兩個或四個陣列流水線,技術已經發展起來。多處理器系統通過與多個處理器並行工作來提高系統的處理能力。每個處理器既可以合作完成壹個作業,也可以獨立完成自己的作業。每個處理器還可以采用各種合適的並行處理技術。在多處理機系統中,在任務的劃分和分配、多處理機之間的同步和通信以及互連網絡的好處等方面,還有許多問題需要解決。現代超級計算機主要使用雙處理器系統(如克雷-XMP)和四處理器系統(如HEP)。
向量寄存器為了降低對存儲流量和帶寬的要求,解決短向量運算速度低的問題,第二級超級計算機采用了向量寄存器技術。CRAY-1有8個向量寄存器,所有向量運算指令都面向向量寄存器和其他通用寄存器。為了更有效地支持各流水線並行執行各自的向量運算,VP/100、S810等日本第三級超級計算機擁有總容量為64k字節的巨大向量寄存器。
標量運算標量運算速度對超級計算機系統的綜合速度有很大影響。因此,除了增加標量寄存器、標量備份寄存器或標量高速緩沖存儲器,采用先進的標量控制技術(如前瞻控制)外,還可以采用專門用於標量運算的功能部件、標量處理器等技術。比如CRAY-1的多功能部件中,6個專用於標量和地址運算,3個也用作標量浮點運算,標量運算速度可以達到每秒2000萬次以上;CYBER205特別設計了標量處理器,包含五個運算部件,標量運算速度可以達到每秒5000萬次以上。通過提高向量運算的速度,進壹步提高標量運算的速度,盡可能縮小兩者之間的差距,從而提高超級計算機系統的性能,已經成為壹個重要的研究課題。
主存儲器為了使復雜系統的3D處理成為可能,要求主存儲器能夠容納大量數據。80年代的超級計算機容量已經達到256兆。為了與運算單元的速度相匹配,主存必須大大增加信息流。因此,主要措施有:①采用成熟的多模塊交叉訪問技術,模塊數壹般為2n,部分超級計算機采用素數模塊新技術,盡可能避免向量訪問沖突;(2)不斷減少各個模塊的訪問周期。比如克雷-XMP機的存取周期是38納秒,S810機的靜態MOS存儲器只有40納秒,相當於雙極存儲器;③增加主存儲器的訪問端口。例如,與CRAY-1相比,CRAY-XMP的每個處理器都有四個訪問端口,解決了存儲訪問的瓶頸問題。
I/O通道超級計算機不僅配備了大量的I/O通道,如16 ~ 32,而且具有很高的通道傳輸速率。例如,克雷-XMP有兩個傳輸速率為每秒65,438+000兆字節的信道和壹個傳輸速率為每秒65,438+0,250兆字節的信道。
固態海量存儲為了適應主存和外存之間大量數據的頻繁調度,壹種新型的超級計算機采用固態海量存儲作為超高速外存。克雷-XMP的固態存儲器采用MOS技術,容量64 ~ 256兆,傳輸速率比磁盤快50 ~ 100倍。S810的固態內存容量為256 ~ 1024兆,傳輸速率達到每秒1000兆。
大規模集成電路超級計算機的邏輯電路均采用超高速ECL電路,門延遲約為0.25 ~ 0.5納秒,芯片門數為幾十到1000多個。在1984中,日本研制成功了壹種4K門陣列室溫GaAs芯片,其級延遲約為50皮秒。超高速雙極隨機存儲器對向量寄存器的存取時間為3.5 ~ 5.5納秒。
組裝工藝是通過縮短機器內布線長度,提高機器主頻來提高超級計算機速度的基礎。現代超級計算機的主頻已經達到250 MHz以上。所以除了提高芯片的集成度和速度,還采用了微組裝等高密度多層組裝工藝。由此產生的散熱問題非常突出,需要采取特殊的散熱措施。
並行算法和軟件技術為了充分發揮超級計算機的系統性能,需要研究各種並行算法,開發並行軟件系統。根據超大型科學計算的特點,超級計算機通常配備以下軟件:具有多種處理能力的批處理分布式操作系統、高效匯編語言、矢量FORTRAN或PASCAL、ADA語言和矢量識別器、並行標準子程序庫、科學子程序庫和應用程序庫、系統實用程序、診斷程序等。