每秒浮點運算次數
此條目需要補充更多來源。 (2018年2月28日) |
每秒浮點運算次數,亦稱每秒峰值速度,(英語:Floating-point operations per second;縮寫:FLOPS),即每秒所執行的浮點運算次數。浮點(floating-point)指的是帶有小數的數值,浮點運算即是小數的四則運算,常用來測量電腦運算速度或被用來估算電腦效能,尤其是在使用到大量浮點運算的科學計算領域中。因為FLOPS字尾的那個S代表秒,而不是複數,所以不能夠省略。在多數情況下,測算FLOPS比測算每秒指令數(IPS)要準確。
名稱 | 單位 | 數值 |
---|---|---|
kiloFLOPS | kFLOPS | 103 |
megaFLOPS | MFLOPS | 106 |
gigaFLOPS | GFLOPS | 109 |
teraFLOPS | TFLOPS | 1012 |
petaFLOPS | PFLOPS | 1015 |
exaFLOPS | EFLOPS | 1018 |
zettaFLOPS | ZFLOPS | 1021 |
yottaFLOPS | YFLOPS | 1024 |
浮點運算實際上包括了所有涉及浮點數的運算,在某類應用軟體中常常出現,比較整數運算更用時間。現今大部分的處理器中都有浮點運算器。因此每秒浮點運算次數所量測的實際上就是浮點運算器的執行速度。常用來測量每秒浮點運算次數的基準程式(benchmark)之一,是Linpack。
評價
許多專家[誰?]對每秒浮點運算次數頗多微詞,認為它並不是一個有意義的量度,因為FLOPS並不能反應出許多對執行效能有影響的因素。例如:I/O的效能、記憶體的架構、快取記憶體一致性(cache coherence)。這意味著電腦的實際計算容量,與FLOPS的理論峰值間會有一段不小的差距。
隨著新資訊科技時代(數據挖掘、機器學習、深度學習、BIG DATA 巨量資料、各種類神經網路和人工智慧等)及工業革命 4.0 的發展,與 FLOPS 運算效能指標有關的計算裝置以顯示卡 GPU 和 FPGA 為主要核心,但 FLOPS 指標卻未能準確地反映出以上裝置在相關領域運算的效能表現。皆因以上裝置的架構是利用 CUDA、OpenCL 等程式語言來實現加速相關應用程式的運算速度(普遍達 20 倍甚至高達過千倍),而這些技術的實現依賴的是如 GPU 比 CPU 擁有更多倍數整合的核心,如一塊 NVIDIA GeForce GTX-750Ti 處理器就擁有高達 640 個 CUDA Core,其 GFLOPS 效能表現理想但實際上並未對巨量資料運算作出很大的貢獻,更多地是因為數量龐大的 CUDA 核心(每核心都有 ALU 算術邏輯運算單元)能進行並行運算而產生的指數級別運算速度提升。
換算
- 一個MFLOPS(megaFLOPS)等於每秒一百萬(106)次的浮點運算; [1]
- 一個GFLOPS(gigaFLOPS)等於每秒十億/十億(109)次的浮點運算;
- 一個TFLOPS(teraFLOPS)等於每秒一兆/一萬億(1012)次的浮點運算;
- 一個PFLOPS(petaFLOPS)等於每秒一千兆/一千萬億(1015)次的浮點運算;
- 一個EFLOPS(exaFLOPS)等於每秒一百京/一百億億(1018)次的浮點運算。
浮點運算
在進行非常大或者非常小的實數運算,或者參與運算的數字在一個很大的範圍內變動時都非常需要浮點運算的參與。 浮點數的表示方式類似於科學計數法,其區別在於科學計數法是以10作為基數,而浮點數以2作為基數。 一些已經發表的編碼標準定義了 指數 (Cray和 VAX定義了基數為2的情況、 IEEE 754 格式定義基數為2或10的情況, IBM浮點架構定義了基數為16的情況)和 有效位數 (數字後有多少位小數)。實際應用中雖然有很多類似的格式,但最常用的是 ANSI/IEEE Std. 754-1985. 定義的格式,如果用於32位元數字則稱為單精度,用於64位元數字的稱為 雙精度 ,數字位數更長的稱為 擴充精度 (用於計算過程中得出的解,這可以防止最終結果誤差過大)。 浮點表示法可以比定點數表示更大範圍內的數字,換言之,它能夠表示非常小的數字和非常大的數字。
動態範圍和精度
浮點運算中的指數運算能夠確保更大的動態範圍,這意味著即便是最大的和最小的數字也能夠被正常表示。這在計算那些資料量跨度非常大,或無法確定具體資料大小的資料集時相當重要。因此,浮點處理器(Floating-point Processor,FPU) 非常適合用於計算密集型應用程式。
效能表現
FLOPS 和 MIPS 都是用來測量電腦數字運算效能表現的方式。浮點運算測試通常用在科研和研究領域。 MIPS則用來測量電腦的整數操作效能。 整數操作的例子包括資料轉移(從A到B),條件測試(當 A=B時,執行C). 當一台電腦被用來進行資料庫查詢,文書處理、電子試算表製作或執行多個虛擬機器時,一般進行MIPS基準效能測試就足夠了。 來自勞倫斯利弗莫爾國家實驗室(Lawrence Livermore National Laboratory)的弗蘭克·H·麥克馬洪(Frank H. McMahon)發明了FLOPS和MFLOPS(megaFLOPS)這兩個術語。以便他能夠比較現代的超級電腦每秒鐘能夠進行的浮點運算次數。 這比普遍使用的MIPS更適合測算那些能夠進行大量數字運算的電腦。
FLOPS在高效能電腦叢集(超算)上可以使用這一公式得出:
.
簡化到電腦只擁有一塊CPU的情況時,可以使用以下公式:
.
其他
以下列出幾個有代表性硬體的每秒浮點運算次數
- 注意:本頁所收集之數據於大部份情況下僅供作實際參考值,視不同裝置持有者的晶片品質及運作相關(如:廠商硬體設定、主機板條件、供電系統設定、運作溫度會因高溫而自動強制降頻作保護等因素)而有所不同,大致會與參考值有 (+/-)MAX 15 % 的差異值。
浮點效能參考指標 (xFLOPS) = 總運算核心數 x 每周期運算次數 x 處理器相對運作頻率 i.e.: 1,228.8 GFLOPS/1.2288 TFLOPS = 384 Core x 4 x 800 MHz(0.8 GHz)
FLOPS
- ENIAC: 300 FLOPS
MFLOPS
- CRAY-1: 160 MFLOPS
- Raspberry Pi Broadcom CM2708 ARM11 @1 GHz(OC): 316.56 MFLOPS
GFLOPS
- Intel Xeon 3.6 GHz: <1.8 GFLOPS
- SONY PlayStation 2: 4.7 GFLOPS
- Intel Pentium 4 HT 3.6GHz: 7 GFLOPS
- Raspberry Pi Cluster (32 node)x Broadcom CM2708 ARM11@1 GHz: 10.13 GFLOPS (叢集由 博伊西州立大學電氣工程與計算機系博士生 Joshua Kiepert 實踐)
- Nintendo Wii (ATI HollyWood 243MHz): 12 GFLOPS
- Intel Core 2 Duo E4300 @ 1.8GHz: 14 GFLOPS
- ARM Mali-400 MP4 @ 533MHz: 19.2 GFLOPS
- 樹莓派 上的 VideoCore: 24 GFLOPS
- Intel Core 2 Duo E8400 @ 3.0GHz: 24 GFLOPS
- AMD Phenom X4 9950 @ 2.6GHz : 29.05 GFLOPS
- Intel Core i5-4210U: 36.77175 GFlops (Win 8.1/Pro x64, LinX 0.6.5, Problem Size=11,530, MiB=1,024, 3 times) in 27.798sec
- Intel Core 2 Quad Q8200 @ 2.33GHz: 37 GFLOPS
- Intel Core 2 Extreme QX9770 @ 3.2GHz: 39.63 GFLOPS
- AMD Phenom II x4 955 @ 3.2GHz: 42.13 GFlopS
- Intel Core i5-4210U: 43.4467 GFlops (Win 8.1/Pro x64, LinX 0.6.5, Problem Size=11,530, MiB=1,024, 3 times) in 23.526sec
- Intel HD Graphics 2000 @ 1250MHz(SB): 60 GFLOPS
- Intel Core i7 965: 69.23 GFLOPS
- ARM Mali-T720 MP8 @ 600MHz: 81.6 Peak GFLOPS
- Intel Core i7 980 XE : 107.6 GFLOPS
- Intel HD Graphics 2500 @ 1150MHz(IVB): 110.4 GFLOPS
- Intel Core i5 2500K @ 4.5GHz: 123.35 GFLOPS (w/AVX instruction set)
- Intel HD Graphics 3000 @ 1300MHz: 125 GFLOPS
- Intel HD Graphics 3000 @ 1350MHz(SB): 129.6 GFLOPS
- New Intel HD Graphics GT1 @ 1150MHz(Haswell): 184 GFLOPS
- SONY PlayStation 3: 228.8 GFLOPS
- Mircosoft Xbox 360: 240 GFLOPS
- IBM POWER7: 264.96GFLOPS[2]
- ARM Mali-T760 MP16 @ 600MHz: 326 GFLOPS
- NVIDIA Jetson TK1 (Tegra K1) 開發平台-Ubuntu: 326 GFLOPS (此為最大值且於內建風扇下運作)
- Nintendo Wii U (ATI Latte 550MHz): 352 GFLOPS
- Intel HD Graphics 4000 @ 1300MHz(IVB): 332.8 GFLOPS
- NVIDIA GeForce 8800 Ultra(G80-450 GPU):393.6 GFLOPS
- Intel HD Graphics 4200/4400 (Mobile)/4600/P4600/P4700 GT2 @ 1350MHz: 432 GFLOPS
- Nintendo Switch (Nvidia Tegra X1 921MHz) : 471 GFLOPS
- AMD Radeon HD 3870(RV670 GPU):497 GFLOPS
- NVIDIA Tegra X1:512 GFLOPS
- Intel HD Graphics 5000 GT3 ~HD4XXX @ 1100MHz <15W+>: ~704 GFLOPS
- NVIDIA GeForce GTX 280(G200-300 GPU):720 GFLOPS
- NVIDIA GeForce 840M w/2GB vRAM: 790 GFLOPS
- NVIDIA GeForce 840M (2GB Dedicated VRAM): 790.3 GFLOPS
- Intel Iris Graphics 5100 @ 1100MHz <28W+>: 704 GFLOPS
- AMD Radeon HD 4870(RV770 GPU):1008 GFLOPS
- NVIDIA Jetson TX1: over 1,100 GFLOPS
TFLOPS
- Microsoft Xbox One:1.31 TFLOPS
- Microsoft Xbox One S:1.404 TFLOPS
- NVIDIA GeForce GTX 580 :1.581 TFLOPS
- Valve Steam Deck (AMD RDNA2 1.6GHz):1.638 TFLOPS
- AMD Radeon HD 7850 :1.761 TFLOPS
- NVIDIA GeForce GTX 950 :1.825 TFLOPS
- SONY PlayStation 4:1.84 TFLOPS
- NVIDIA GeForce GTX 1050 :1.862 TFLOPS
- NVIDIA GeForce GTX 1050Ti :2.138 TFLOPS
- NVIDIA GeForce GTX 960 :2.413 TFLOPS
- NVIDIA GeForce GTX 680 :3.25 TFLOPS
- AMD Radeon R9 380 :3.476 TFLOPS
- NVIDIA GeForce GTX 970 :3.92 TFLOPS
- Microsoft Xbox Series S:4.006 TFLOPS
- SONY PlayStation 4 Pro:4.198 TFLOPS
- AMD Radeon HD 7970 GHz Edition :4.301 TFLOPS
- NVIDIA GeForce GTX 1060 6GB :4.375 TFLOPS
- NVIDIA GeForce GTX Titan :4.709 TFLOPS
- NVIDIA GeForce GTX 980 :4.981 TFLOPS
- AMD Radeon RX 570 :5.095 TFLOPS
- AMD Radeon HD 6990 : 5.1 TFLOPS
- NVIDIA GeForce GTX 780Ti :5.345 TFLOPS
- AMD Radeon R9 390 :5.12 TFLOPS
- NVIDIA GeForce GTX 1660 Ti :5.437 TFLOPS
- AMD Radeon R9 290X :5.632 TFLOPS
- AMD Radeon RX 480 :5.834 TFLOPS
- Microsoft Xbox One X:6 TFLOPS
- NVIDIA GeForce GTX 980 Ti :6.06 TFLOPS
- AMD Radeon RX 580 :6.175 TFLOPS
- NVIDIA GeForce RTX 2060 :6.451 TFLOPS
- NVIDIA GeForce GTX 1070:6.463 TFLOPS
- NVIDIA GeForce GTX Titan X:6.691 TFLOPS
- AMD Radeon RX 590 :7.119 TFLOPS
- NVIDIA GeForce RTX 2060 Super :7.181 TFLOPS
- NVIDIA GeForce RTX 2070 :7.465 TFLOPS
- AMD Radeon RX 5700 : 7.949 TFLOPS
- NVIDIA GeForce GTX 1070 Ti : 8.186 TFLOPS
- AMD Radeon R9 Nano :8.192 TFLOPS
- AMD Radeon HD 7990 :8.192 TFLOPS
- AMD Radeon R9 FURY X : 8.602 TFLOPS
- NVIDIA GeForce GTX 1080 :8.873 TFLOPS
- NVIDIA GeForce RTX 2070 Super :9.062 TFLOPS
- NVIDIA Tesla P100 : 9.526 TFLOPS
- AMD Radeon RX 5700 XT : 9.754 TFLOPS
- NVIDIA GeForce RTX 2080 :10.068 TFLOPS
- NVIDIA GeForce GTX Titan Z :10.092 TFLOPS
- SONY PlayStation 5 GPU:10.29 TFLOPS
- AMD Radeon RX Vega 56 :10.544 TFLOPS
- NVIDIA Titan X Pascal :10.974 TFLOPS
- NVIDIA GeForce RTX 2080 Super :11.151 TFLOPS
- AMD Radeon RX 6700 : 11.29 TFLOPS
- AMD Radeon R9 295X2 :11.467 TFLOPS
- NVIDIA GeForce GTX 1080 Ti :11.34 TFLOPS
- Microsoft Xbox Series X GPU:12.147 TFLOPS
- AMD Radeon RX Vega 64 : 12.665 TFLOPS
- NVIDIA GeForce RTX 3060 :12.738 TFLOPS
- AMD Radeon RX 6700 XT : 13.215 TFLOPS
- NVIDIA GeForce RTX 2080 Ti :13.448 TFLOPS
- NVIDIA Tesla V100 :14.1 TFLOPS [來源請求]
- NVIDIA Titan V : 14.9 TFLOPS
- NVIDIA GeForce RTX 4060 : 15.114 TFLOPS
- AMD Radeon RX 6800 : 16.166 TFLOPS
- NVIDIA GeForce RTX 3060 Ti :16.197 TFLOPS
- NVIDIA Titan RTX : 16.312 TFLOPS
- NVIDIA GeForce RTX 3070 : 20.314 TFLOPS
- AMD Radeon RX 6800 XT : 20.736 TFLOPS
- NVIDIA GeForce RTX 4060 Ti 8 GB : 22.065 TFLOPS
- AMD Radeon RX 6900 XT : 23.04 TFLOPS
- NVIDIA GeForce RTX 4070 : 29.146 TFLOPS
- NVIDIA GeForce RTX 3080 : 29.768 TFLOPS
- NVIDIA GeForce RTX 3080 Ti : 34.099 TFLOPS
- NVIDIA GeForce RTX 3090 : 35.581 TFLOPS
- NVIDIA GeForce RTX 4080 : 48.737 TFLOPS
- AMD Radeon RX 7900 XT : 51.481 TFLOPS
- AMD Radeon RX 7900 XTX : 61.415 TFLOPS
- Earth Simulator:35.6 TFLOPS
- NVIDIA GeForce RTX 4090 : 82.575 TFLOPS
- Blue Gene/L:135.5 TFLOPS
- 中國曙光Dawning 5000A:230 TFLOPS
PFLOPS
- IBM Roadrunner:1.026 PFLOPS
- 台灣杉一號:1.7 PFLOPS
- Jaguar:1.75 PFLOPS
- 天河一號:2.566 PFLOPS
- 台灣杉三號:2.7 PFLOPS
- IBM Mira: 8.16 PFLOPS
- 台灣杉二號:9 PFLOPS
- 京:10.51 PFLOPS
- IBM Sequoia:16.32 PFLOPS
- Cray Titan:17.59 PFLOPS[3]
- 天河二號:33.86 PFLOPS
- BOINC運算平台:35.109 PFLOPS(2020-5-1)
- 神威太湖之光:93.01 PFLOPS
- Summit : 122.3 PFLOPS
- 富岳 : 415 PFLOPS
EFLOPS
- 比特幣全網算力(2013/5) : 1 EFLOPS
- Folding@home運算平台:2.6 EFLOPS(2020/4/24)
- 比特幣全網算力(2018/5) : 35 EFLOPS
歷史記錄
單體電腦的記錄
1997年六月, 英特爾的 ASCI Red 是世界上第一台每秒浮點運算次數超過每秒一萬億次。 桑迪亞國家實驗室主任Bill Camp說,ASCI Red和此前建造的超算相比擁有最高的可靠性,並且"是超級計算在壽命、價格和效能上的新水平"。
NEC 的 SX-9 超級電腦是世界上第一台 向量處理器 中每顆核心能達到超過100 億次運算的機器。
作為比較,一台 電子計算機 只需要較低的FLOPS就能完成工作。 當一台電腦的回應時間低於0.1秒時,人類操作者就會認為其能夠「瞬時」完成計算, 所以,一台簡易計算機只需要大約10FLOPS就能夠完成它的功能。
在2006年, 日本理化學研究所發表了新型電腦 MDGRAPE-3。該電腦的最高運算效能可以達到每秒一千萬億次,幾乎是Blue Gene/L的兩倍,但MDGRAPE-3不是一台通用型電腦,這就是為什麼它不會出現在 Top500.org 名單中。 它通過特殊設計的 電腦管線 來類比分子的運動。
到2007年, 英特爾 推出的試驗性 多核 北極星 晶片,在3.13 GHz的工作頻率下實現了1tFLOPS的運算速度。 80核心的晶片可以將頻率提升到6.26 GHz,從而達到2tFLOPS的速度,而熱功耗在這個頻率下已經超過190 瓦。
2007年6月26日, IBM 公布了它的第二代頂級超級電腦,被稱為Blue Gene/P。它被設計成連續操作的速度能夠超過一千萬億次。 為了達到這一目標,它的最高運算速度可以達到超過三千萬億次。
在2007年的Top500.org 報告中,世界上最快的電腦是 IBM Blue Gene/L 超級電腦,測量的峰值596 萬億次浮點運算. 在 Cray XT4 以101.7 萬億次浮點運算速度的成績位列第二。
2007年10月25日, 日本NEC公司發布其SX系列新型號 SX-9, 其聲稱它是世界上最快的向量的超級電腦。 SX-9 是第一台CPU能夠以每顆核心每秒102.4億次浮點運算的速度進行頂點向量運算的機器。
2008年2月4日, 美國國家科學基金會 和 奧斯汀的德克薩斯大學 開展了一個完全執行在 AMD和 Sun 平台,名叫Ranger的超級電腦上的研究。 這是當時世界上最強大的研究用超級電腦系統,其持續工作時的運算速度為五百萬億次。
2008年5月25日, IBM為美國建造了一台超級電腦,起名為'鵑',這台機器的運算速度達到了里程碑式的一千萬億次。 它也榮獲2008年6月和11月的 TOP500 最強大的超級電腦(不包括 網格計算). 電腦位於新墨西哥的洛斯阿拉莫斯國家實驗室。 電腦的名字指的是新墨西哥州鳥,大鵑 (Geococcyx californianus).
在2008年六月,AMD發布了ATI Radeon 4800系列,這是第一塊達到一萬億次浮點運算能力的GPU. 2008年8月20日,AMD發布ATI Radeon HD 4870X2圖形卡與兩塊 Radeon R770 Gpu總共達到2.4萬億次浮點運算.
2008年11月,美國能源部(DOE)的橡樹嶺國家實驗室升級了Cray 提供的 Jaguar超級電腦。該系統的峰值計算能力為1.64千萬億次,使得美洲虎成為世界上第一個專門用於開放研究的千萬億次系統。 在2009年初,一台以神話般的動物命名超級電腦,海妖誕生了。 海妖是世界上由大學管理的電腦中速度最快的一台,在2009年TOP500榜單中名列第六。2010年,經過升級的海妖操作速度更快,更強大。
2009年, Cray Jaguar以1.75千萬億次的速度擊敗IBM的「鵑」,登上500強名單的第一名。
在2010年,中國推出了 天河一號,這台超級電腦工作的峰值計算速度在每秒2.5千萬億次。
同年最快的PC處理器在雙精度浮點運算測試中達到 109 gFLOPS (Intel Core i7 980 XE) ,GPU的處理速度則更為強大。舉例來說, Nvidia Tesla C2050 GPU 在雙精度浮點運算測試中能夠達到大約515 gFLOPS ,而AMD FireStream 9270的峰值工作速度也達到240 gFLOPS.
2011年,日本已開發出運算速度在10.51千萬億次的K電腦(京). 它擁有88,128顆 SPARC64VIIIfx 處理器,總共占用了864台機架,與理論效能的11.28千萬億次。 它以日本漢字"京"的讀音命名,「京」表示10 萬億, 對應了它的速度 10 千萬億次。
2011年11月5日,英特爾發布一款基於x86處理器,代號為"騎士角",持續運算速度超過一萬億次。 英特爾在演示期間強調,這是持續的萬億次浮點運算(不是其它公司聲稱的"原生萬億次浮點運算",以獲得更高,但無意義的數字),它是第一塊超過一萬億次浮點運算的通用處理器.
2012年6月18日, IBM的紅杉的超級電腦系統,根據美國勞倫斯*利弗莫爾國家實驗室(U.S. Lawrence Livermore National Laboratory,LLNL)的測試結果,速度達到16千萬億次,奠定了新的世界紀錄,並以第一名的成績重新整理了最新TOP500的名單。
2012年11月12日,TOP500名單認證的 泰坦 作為世界上最快的超級電腦通過LINPACK基準測試,運算速度在17.59千萬億次。 它是由Cray Inc. 在 橡樹嶺國家實驗室 聯合AMD皓龍處理器和"克卜勒"架構的NVIDIA Tesla圖形處理單元(GPU)的技術下製造完成的。
2013年6月10日,中國的 天河2號 的以33.86千萬億次成世界上最快超級電腦。2016年6月20日,中國的 神威·太湖之光 在LINPACK基準測試中以93pFLOPS(峰值速度超過125pFLOPS)的成績登頂成為世界最快超級電腦。 該系統幾乎完全基於中國的技術研發,其被安裝在無錫的國家超級計算中心。據介紹,該系統比其在TOP500中下五個排名的系統算力之和還要快。
2018年6月生產的 高峰是由IBM建立的超級電腦。現在正在執行在能源部(DOE)橡樹嶺國家實驗室,以 122.3千萬億次 的效能表現登頂HPL(High Performance Linpack),HPL是製作TOP500的名單的基準。 高峰擁有4,356節點,每個節點配有兩塊22核心的Power9 Cpu,以及六塊NVIDIA Tesla V100 GPU。
分散式電腦記錄
分散式計算使用網際網路連結的個人電腦來達到更高的FLOPS。
參見
注釋
- ^ 中文數字使用萬進,一萬萬為一億,一萬億為一兆,一萬兆為一京;此處的兆不是SI詞頭mega。參見中文數字
- ^ IBM POWER7超高规格处理器正式发布. 2010年2月9日 [2011年12月18日]. (原始內容存檔於2017年4月19日).
- ^ Oak Ridge Claims No. 1 Position on Latest TOP500 List with Titan. TOP500. November 12, 2012 [November 15, 2012]. (原始內容存檔於2013-01-21).
外部連結
- Current Einstein@Home benchmark (頁面存檔備份,存於網際網路檔案館)
- BOINC projects global benchmark (頁面存檔備份,存於網際網路檔案館)
- Current GIMPS throughput (頁面存檔備份,存於網際網路檔案館)