歷經多年的發展,AWS陸續推出多款自己設計的晶片,包含:可卸載IT基礎架構網路、運算、儲存負載的Nitro System,承擔伺服器運算的Graviton,加速AI推論與訓練處理的Inferentia、Trainium,以及提供一致效能的Nitro SSD。(圖片來源/AWS)

過去,通用伺服器與加速運算平臺的市場供需,主要是由英特爾、AMD、Nvidia等處理器廠商,以及企業用戶所主導,隨著大型網站公司與雲端服務崛起之後,這些仰仗超大規模IT基礎架構來支撐自身業務的用戶,一躍成為市場需求的大宗,而上述運算平臺廠商除了持續推出與更新標準型產品,供應企業所需之餘,也默默推出大量客製型晶片產品(Custom Chip)。

以英特爾提供雲端服務的伺服器級處理器為例,在2013年,客製型CPU僅占出貨總量的18%,到了2017年,已增長至一半,2018年又成長至55%。然而,即便廠商幫業者量身打造處理器,隨著自行設計運算平臺的門檻大幅降低,近年來,公有雲業者也以提供理想的每瓦運算效能、價格低廉的服務等旗幟,積極投入硬體晶片的自行設計,展現技術整合實力,最具知名度的例子,當數Google在2016年推出的Cloud TPU。

而身為公有雲服務龍頭的AWS,他們的野心更大,前幾年陸續推出多款自己設計的運算晶片(AWS-Designed Chips),範圍涵蓋DPU/IPU、CPU、AI加速晶片,在今年re:Invent大會歡慶成立15週年之際,不只是推出Arm架構新一代處理器Graviton3、基於這款CPU的執行個體服務C7g,以及採用AI訓練加速晶片Trainium的執行個體服務Trn1開放預覽版測試,更重要的是,終於更完整透露這項重要工程的發展歷程,展現當前取得的成就,以及用戶與自身導入的成效,並明確表達這就是AWS回應全球2050淨零碳排要求的部分答案。

8年前開始發展自製晶片

談到AWS自製晶片,多數人都以為可溯及2018年11月底的re:Invent大會,因為他們以自己設計的Graviton處理器,推出EC2執行個體服務A1,僅說這是與硬體設計公司Annapurna Labs合作,而發展出Nitro System硬體卸載架構,並於2015年買下這家公司,共同開發出兩款ASIC晶片,將EC2所有系統功能100%卸載到當中執行(近期熱門的DPU也主打此種應用),幾年之後,這個團隊開始設計自製晶片,希望以更具成本效益的方式,支援橫向擴展規模的負載。

不過,在今年的re:Invent大會,AWS Amazon EC2運算與網路服務副總裁David Brown大爆料,公開表示他們發展晶片的時間,比上述時間更早。

他在回顧15年來AWS運算創新的演講特別提到:早在2013年、2014年,AWS發展第一張Nitro網路加速卡,就開始搭配他們設計的Arm架構Graviton處理器。

這麼做的原因在於,他們想向世界證明Arm架構真的來到雲端服務世界,並且是以伺服器的形態,而不只是行動裝置,同時,想藉此照亮整個生態系統,確保用戶、應用程式開發者、開放原始碼軟體、作業系統,都開始轉移、支援Arm。David Brown表示,如今證明這樣的策略真的奏效,結果也令人驚艷。

圖片來源/AWS
AWS設計晶片的過程,橫跨8年之久,以技術應用性質而言,這些晶片可區分成Nitro、機器學習、伺服器運算等三大領域。

 

圖片來源/AWS
在今年re:Invent大會上,AWS特別公開Graviton第一代與第二代的外觀,並揭露其製程與電晶體數量,至於最新發表的第三代,目前僅知電晶體數量高達550億個。

Arm架構Graviton大放異彩,二代晶片成多種服務與自身應用主力

以AWS供應給用戶的執行個體服務而言,在2019年12月初舉行的re:Invent大會,他們宣布基於新一代自製處理器Graviton2,推出3種應用定位、共6個的執行個體服務,包含:一般用途的M6g與M6gd,運算最佳化的C6g與C6gd、記憶體最佳化的R6g與R6gd,相較於旗下既有的x86架構執行個體服務,可提供高出4成的性價比效益;發展至今,AWS有12個執行個體採用Graviton2處理器,涵蓋多種應用類型:一般用途、運算最佳化、記憶體最佳化、網路強化、記憶體強化、暴量效能(burstable),以及新發表的儲存最佳化。

而在公開表態採用Graviton處理器執行個體服務的用戶上,不只是成本錙銖必較的新創公司,就連大型企業也成為AWS自製晶片的活招牌,像是商業軟體廠商SAP、大型社群網站業者Twitter、推動一級方程式賽車的Formula One集團,都發布消息,表示既有的SaaS服務(SAP HANA Cloud)、平臺的部分功能(Twitter timelines)將移植到搭配Graviton2的執行個體,並看好採用Graviton3的執行個體,正在測試評估。

在具體成效上,AWS也引用Twitter評語突顯Graviton的2代與3代差異。Twitter表示,若以採用Graviton2的執行個體C6g為基準,採用Graviton3的新執行個體C7g可獲得2到8成效能提升,高尾部延遲(tail latencies)減少35%。

另一應用實例,是AWS的母公司:跨國電商亞馬遜,在2021年6月的年度商品促銷日Prime Day,啟用基於Graviton2的執行個體,支撐12個核心零售服務。

在實際運用上,AWS特別提到,當時亞馬遜主網站的重要服務Datapath,移植到Graviton,運作在53,200臺C6g執行個體組成、跨三個區域的叢集。這項服務支援跨結構化二進化大型物件資料(BLOB)的查找、詢問、連接(join)。而經歷整個活動後,AWS表示,亞馬遜今年僅增加12.5%的單位運算能力(Normalized Instance,NI),以少於6千臺實體伺服器的規模(相當於該公司2020年網路星期一促銷用量),就撐住了所有的工作負載。

值得注意的是,AWS對於Graviton2的使用,不只是對外提供高性價比的執行個體,讓用戶有更多選擇,例如,2020年9月推出暴量效能的T4g,2021年3月,發表另一款主打每GB記憶體最低成本的X2gd,他們也將本身營運的許多代管服務,都轉移到這個處理器平臺。

以關聯式資料庫服務為例,2020年10月,RDS的三種資料庫引擎:MySQL、MariaDB、PostgreSQL,可搭配基於Graviton2的執行個體:M6g、R6g。到了2021年3月,Aurora的PostgreSQL相容版本與MySQL相容版本,也能搭配基於Graviton2的執行個體服務:R6g。

就記憶體內資料庫服務而言,2020年8月,ElastiCache的資料庫引擎:Redis、Memcached,可用M6g與R6g;2021年11月,MemoryDB for Redis可搭基於Graviton2的執行個體服務:T4g。

至於文件資料庫服務與圖學資料庫服務,從2021年11月起,DocumentDB與Neptune均可開始搭配T4與R6g。

關於資料分析服務的部分,從2020年10月起,可承載多種大數據分析軟體的EMR能夠搭配M6g,另一款基於搜尋與分析軟體Elasticsearch的OpenSearch Service,則是在2021年6月起,可搭配C6g、M6g、R6g、R6gd。

在運算類型服務上,2020年8月起,Elastic Kubernetes Service(EKS)用戶可將工作運作在Graviton2執行個體,如C6g、M6g、R6g。到了2021年9月,無伺服器運算服務Lambda用戶可選Arm處理器架構,由Graviton2來執行函式(functions)。同年11月,容器代管服務Amazon Elastic Container Service(ECS),針對容器應用的無伺服器服務Fargate,以及部署Java、.NET、PHP等網站服務的Elastic Beanstalk,此時也提供Arm運算架構(Graviton2)選項,或支援搭配Graviton2的執行個體服務。

在儲存類型的雲端服務上,2020年7月起,FSx for Lustre這套檔案系統服務允許用戶從Graviton2的執行個體存取;在2021年11月底推出的FSx for OpenZFS,本身就是採用Graviton2處理器而成。

 

圖片來源/AWS
AWS推出Graviton2處理器之後,不只是設置更多搭配這款晶片的執行個體服務,其他代管多種雲端服務,也提供搭配Graviton2運算平臺的選擇。

加速AI推論與訓練的晶片陸續出爐

除了越來越多的執行個體服務與代管服務採用AWS設計的Graviton系列處理器,可提供更經濟實惠的CPU運算能力,另一個用戶與AWS本身負擔日益繁重的硬體層面成本,則是AI加速運算資源,而AWS這幾年也陸續推出自己設計的晶片,以及搭配的執行個體服務。

首先是AI推論加速晶片,在2019年12月,AWS基於他們設計的Inferentia晶片,發表用於AI推論加速的執行個體服務Inf1,用戶最多可搭配16個Inferentia晶片,使用100 Gbps網路頻寬,能提供超過2 PetaOps的推論效能。

圖片來源/AWS
在AI推論加速處理上,AWS設計出一款專屬晶片Inferentia,並以此設置了執行個體服務Inf1,於2020年正式推出。

根據今年的re:Invent大會公布的資訊來看,在每個推論的成本上,Inf1節省幅度最多可達到77%。而在2020年11月,AWS也宣布,亞馬遜旗下的智慧型語音助理服務Alexa,將大部分原本基於GPU來進行機器學習推論的工作負載,遷移到Inf1,為此獲得30%成本節約,而所有環節的存取延遲也降低了25%。

線上民宿網站Airbnb也採用了Inf1,根據他們的評估測試,相較於GPU類型的執行個體,在Inf1處理基於PyTorch而成的BERT模型,吞吐量可提升2倍。

另一款AWS設計的AI加速晶片,是針對機器學習的訓練。在2020年re:Invent大會預告2021年將推出的AI訓練加速晶片Trainium,當時提到將發布搭配的執行個體服務,並能用於機器學習代管服務SageMaker當中。

圖片來源/AWS
關於AI訓練加速的應用,AWS在2020年re:Invent大會預告將推出專屬晶片Trainium,一年後,他們宣布推出基於這款晶片的執行個體服務Trn1預覽版,預計2022年上半全面供應。

到了2021年re:Invent大會,AWS發布搭配Trainium的執行個體Trn1預覽版,他們強調Trn1針對深度學習的訓練處理提供最佳性價比,相較於款搭配Nvidia A100 GPU的P4d,成本節省40%。

而就規格而言,每臺Trn1最多可搭配16個Trainium晶片,運用800 Gbps的網路頻寬。若需要擴展執行規模,開發者可建置EC2 UltraCluster叢集,可將機器學習的訓練擴展至1萬個以上的Trainium晶片,並以Pbps等級的網路頻寬連接FSx for Lustre檔案系統服務,提供超級電腦等級的效能(2.1 EFLOPS),若面臨最大型、最複雜的模型訓練處理作業,所需時間也能從數月減至數日。

破天荒跨入固態儲存領域,推出自己設計的SSD,可支撐資料庫負載

在今年的re:Invent大會, AWS公用運算資深副總裁Peter DeSantis提到,他們設計了固態硬碟,稱為Nitro SSD,並說明大量使用SSD的挑戰,以及決定自己發展SSD晶片的主要原因。

簡而言之,快閃記憶體只能寫入一定次數,之後不能使用,這些作業都由快閃記憶體抽象轉譯層(FTL)來處理──FTL是複雜的嵌入式軟體,負責快閃記憶體的邏輯位址與實體位址對應,以及正確讀取與寫入位置的對應,也透過平均抹寫技術(Wear Leveling),以便延長快閃記憶體的壽命。

然而,每家SSD廠商的FTL實作均不同,而且單一廠商可能會在不同SSD機型採用各自的FTL實作,雖然它們有相同的API,在大部分狀況下,都表現得很稱職,但根據AWS多年來的使用經驗來看,每一款產品都有難以預測、獨特的行為,像是記憶體儲存空間回收(garbage collection)會在意外的時間中執行,從而導致I/O請求的回應延遲,諸如種種突發狀況,都讓雲端服務業者難以提供一致的存取效能,若要以上述無法掌控的儲存環境,來承擔資料庫這類需要維持一致延遲性的負載,也相當困難,但AWS本身與許多用戶都需要執行此種工作負載,如何確保效能一致?

對此,AWS想出的方法是從他們採用的底層系統架構Nitro著手。因為之所以發展Nitro,就是希望透過這架構處理所有網路與儲存虛擬化的作業,減少變數和避免干擾用戶的工作負載,所以,他們決定自己發展SSD,當中搭載Annapurna Labs設計的Nitro晶片,裡面實作AWS設計的FTL,搭配的儲存媒體則來自多個快閃記憶體廠商。

截至目前為止,他們已部署超過50萬臺的Nitro SSD。而在實際應用的執行個體服務上,AWS在本次re:Invent大會新推出的i4系列:Im4gn、Is4gen、I4i,也率先搭配Nitro SSD,相較於既有的儲存優化執行個體i3系列,i4系列的I/O延遲縮減60%,高尾部延遲降低幅度達75%,更利於執行資料庫工作負載。

不過,更讓人驚訝的是,AWS並非最近才搭配Nitro SSD,Peter DeSantis表示,去年re:Invent預告、今年7月上線的EBS區塊儲存io2 Block Express磁碟區,就是採用Nitro SSD,這個儲存區可提供25.6萬IOPS效能與低於1毫秒的延遲。

AWS也公布兩種資料庫與其搭配之後的存取效能變化。以PostgreSQL而言,相較於io1,搭配io2 Block Express吞吐量領先幅度達1.4倍,延遲低30%;若是SQL Server,io2 Block Express吞吐量比io1高4倍,延遲縮減83%,成效驚人。

整體而言,AWS之所以要自己投入晶片的設計與發展,針對IT基礎架構I/O與運算需求,發展出Nitro System、Graviton,因應新興AI加速需求而設計出Inferentia、Trainium,到了能夠徹底解決儲存效能不一致的Nitro SSD,其動機與目的到了現在才終於真正揭曉。

他們最主要的考量,顯然是提供更多用戶選擇、提升自身維運效率,最終則以降低用戶與自身的成本,彼此都受惠,形成雙贏局面,而這樣為了追求最佳化而堅持在關鍵零組件「重新造輪」的技術發展戰略,堪稱獨樹一格,也替整個IT產業開闢新局面。

圖片來源/AWS
在Nitro、Graviton、Inferentia、Trainium相繼推出之後,AWS今年突然宣布他們自己設計固態硬碟,名為Nitro SSD,當中實作出統一的FTL轉譯層軟體,相較於商用SSD產品,I/O延遲可縮減60%,提供一致的存取效能。

 

 


熱門新聞

Advertisement