每月 5 美元的虛擬機可以躋身 1993 年的超算前三
當然,如果你真的關注性能,市面上自然有更出色的選擇。
今年是 TOP500 公開排名全球最快超級計算機 30 周年。
為紀念這個重要的里程碑,也因應科羅拉多州正在舉行的年度超級計算大會,我們想弄個有趣但稍顯愚蠢的實驗:看看以今天技術,我們能以多低的成本重現 1993 年超級計算機十強的性能。於是,我們在雲上運行了幾台虛擬機,並對 HPLinpack 基準進行了編譯測試。這裡簡單透露一下:我們這項實驗的結果,你可能並不會太震驚。
到 1993 年年末,最快的超級計算機是日本國家航空實驗室的富士通數值風洞。這台裝備了 140 個 CPU 核心的系統,能夠實現 124 GigaFLOPS 的雙精度(FP64)計算能力。
如今,我們的系統已經 突破 了 exaFLOPS 的難關,然而在 1993 年 11 月,如何在功率最高的十個系統中佔據一席之地呢?只要你的 FP64 性能超過了美國 CM-5/544 機型的 15.1 GigaFLOPS。因此,我們設定的目標是讓雲虛擬機超過 15 GigaFLOPS 的性能。
在我們分析結果之前,有幾點值得一提。如果我們選用了支持 GPU 的實例,我們知道我們能夠達到更高的性能。不過,雲端的 GPU 實例租賃並不便宜,並且在 2000 年年中至年底,GPU 才真正開始廣泛出現在 TOP500 的超級計算機中。此外,在 CPU 上運行 Linpack 比在 GPU 上運行要容易得多。
這些測試只是為了紀念 30 周年,只是稍微有點新穎,決不具有科學嚴謹或詳盡無遺的特徵。
一台 5 美元的雲虛擬機對比一部 30 年前的 TOP500 超級計算機
但在開始測試前,我們需要開啟一對 VPC。在本次測試中,我們選擇在 Vultr 上運行 Linpack,但其實在 AWS,Google Cloud,Azure,Digital Ocean 或者是你喜歡的任何雲服務商上,這都同樣適用。
首先,我們啟動了一個月費 5 美元的虛擬機實例,它具備了一個共享的 vCPU,1GB 的內存和 25GB 的存儲。準備就緒後,我們便啟動了 Linpack 的編譯。
在這,事情可能會有些複雜,因為我們實際上可以對系統進行一些調優,擠出一些額外的 FLOPS。然而,考慮到這只是一個測試,也為了儘可能保持簡單,我們選擇了依照 這個指南 進行操作。此份操作手冊是基於 Ubuntu 18.04 編寫的,但是我們發現在 20.04 LTS 上運行也一切正常。
為了產生我們的 HPL.dat 文件,我們利用了一個巧妙的 表單,它會自動產生一個優化版的 Linpack 運行配置。
我們對幾種不同類型的虛擬機進行了三次基準測試,並從每次運行中挑選出最高的得分。以下就是我們的發現:
實例類型 | vCPU | RAM (MB) | 存儲 (GB) | Rmax GFLOPS | 每月費用 (美元) |
---|---|---|---|---|---|
Regular shared | 1 | 1024 | 25 | 31.21 | 5 |
Premium shared | 1 | 1024 | 25 | 51.85 | 6 |
Premium shared | 2 | 2048 | 60 | 87.46 | 18 |
Premium shared | 4 | 8192 | 180 | 133.42 | 48 |
從我們的測試結果可以看出,一個單一的共享 vCPU 在與 1993 年 11 月十大超級計算機的比較中表現出頗為出色的性能。
我們通過一個 CPU 線程就獲得了 31.21 GigaFLOPS 的 FP64 性能,這使得我們的虛擬機與 1993 年排名第三的超級計算機 —— 明尼蘇達超級計算中心的 30.4 GigaFLOPS CM-5/554 Thinking Machines 系統相提並論。這確實令人吃驚,因為那台系統擁有 544 個 SuperSPARC 處理器,而我們的系統只有一個 CPU 線程,雖然我們的系統運行在更高的時鐘速度下。
如你從上面的圖表中所見,每月多花 1 美元,我們的性能躍升至 51.85 GigaFLOPS,而選擇一個價值 18 美元的「高級」共享 CPU 實例,雙線程使我們進一步接近 87.46 GigaFLOPS 的性能。
然而,要超過 富士通的數值風洞,我們需要升級到四個 vCPU 的虛擬機,由此我們抓取到了 133 GigaFLOPS 的 FP64 性能。然而不幸的是,升級到四個線程的費用跳到了每月 48 美元。達到這個價格,Vultr 實際上是在銷售部分 GPU,我們預計如果採用 GPU,性能應會有顯著提升,效率也會更高。
更好的選擇
我們需要明確的是,這些都是我們選擇的共享類型實例。一般來說,共享實例意味著在一定程度上進行了超額配置。
由於共享實例可能會受到其他租戶的影響,這也使得性能有時難以預知,甚至每次運行的性能都可能略有不同,這主要取決於雲區域中主機系統的載荷狀態。
在我們的非常不科學的測試中,我們並未觀察到太多的性能變化。我們想這可能是因為核心並未處在過高的負載下。在專有 CPU 實例上進行同樣的測試,結果與我們每月 6 美元的共享實例相若,但成本高達五倍。
但是,除了這場小實驗的新奇趣味之外,這沒太多實際意義。如果你需要在短時間內獲得大量 FLOPS,有許多已優化的 CPU 和 GPU 實例可供選擇。它們的成本無法與每月 5 美元的實例相媲美,然而大多數實例是按小時賬單的,因此實際成本將取決於你完成工作的迅速程度。
此外,讓我們不要忘記,你的智能手機與這些存在已久的 30 年老計算系統相比,又會有怎樣的對比呢?
(題圖:MJ/16cf957e-a4e4-43b1-99b2-df0574a064dc)
via: https://www.theregister.com/2023/11/14/five_dollar_supercomputer/
作者:Tobias Mann 譯者:ChatGPT 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive