2020年3月19日 星期四

為何 Cloudflare 第十代伺服器選擇 AMD EPYC 平台?


若有經營網站的玩家多半聽過這家提供 CDN 服務的公司 Cloudflare,其不僅指提供 CDN 服務更包含 DNS、負載平衡、最佳化、DDoS 保護等雲端服務,每天有著 10 億個 IP 通過 Cloudflare Network,平均每秒服務 1100 萬個 HTTP 要求,對於 Cloudflare 所提供的服務其效能瓶頸在於 CPU。

越多的核心的確可以處理越多的服務,但是相對的也要考量到伺服器耗電量也就是「每瓦效能」,Cloudflare 需要的是:「What we need is more compute power inside the same power envelope which will drive a higher (better) Requests per Watt number – our key metric.」,在同樣的最大功耗下提供更好的效能,或稱作為 Requests per Watt(每瓦 HTTP 要求)。

Cloudflare 從 2015 年 Gen 6 伺服器開始都使用著 Intel Xeon 處理器,但在 2019 年開始 Gen X 伺服器將從原本雙路 48 核心的 Intel Xeon Platinum 6162 轉換成單路「AMD EPYC 7642」。


兩顆處理器相較之下 EPYC 7642 與 Xeon Platinum 6162 有著相同的 48 核心,而 EPYC 7642 屬於 7nm 製程,整體核心時脈較高、L3 快取更大、有著 8 通道記憶體,而且 TDP 熱功耗更低;但在文中提道,AMD 與 Intel 針對 TDP 的定義不同,而這 TDP 主要反應是處理工作時的熱功耗,因此實際還是要經過測試與驗證才能知曉。


測試面,Cloudflare 依據服務使用的程式語言 C、LuaJIT 與 Go 來設計測試程序,而 AMD CPU 平均時脈約在 3.03 Ghz、Intel 平均 2.50 Ghz 的 CPU 時脈;而  Cloudflare 預期 AMD 將帶來 21% 的效能提升對比 Intel 的平台。

Cryptography
AMD 在 Public Key Cryptography 加密中效能領先達 18% 之多,但在 Symmetric Key 加密 AMD 於 AES-128-GCM 項目中效能落後,但整體來看效能是由 AMD 勝出。


Compression
藉由壓縮技術節省 edge 端的頻寬並加速內容的傳遞,壓縮技術採用 zlib 與 brotli libraries、C 語言撰寫。AMD 在 gzip 壓縮測試有著 29% 的效能領先。


Performance Simulations
除了 ‘sniff’ 測試之外,也模擬了在 Edge 軟體堆疊中會處理裡的工作負載,而從下方圖表中可見,AMD 有著 34% 的效能領先於 Intel。


最後 requests per second (RPS) / watt 測試,可見 AMD 在同核心下有著更好的效能並且比較省電。


從上述測試來看,目前 AMD 的 EPYC 平台,能帶給 Cloudflare 更多的效能、更低的每瓦要求,以及更容易佈建至各地的伺服器中心,這也就是為何 Cloudflare Gen X 伺服器轉用 AMD EPYC 7642 的原因。

而原文中含有更多的功能測試比較,有興趣的用戶可參考 Rob Dinh 的文章

沒有留言: