《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 業(yè)界動(dòng)態(tài) > 8年推出9顆芯,亞馬遜AWS自揭造芯秘籍

8年推出9顆芯,亞馬遜AWS自揭造芯秘籍

2021-12-17
來(lái)源:芯東西
關(guān)鍵詞: 亞馬遜 AWS 自研芯片

亞馬遜云科技(AWS)造芯已有足足八年。

從2013年推出首顆Nitro1芯片至今,這家最先涉足自研芯片的云廠商,已坐擁網(wǎng)絡(luò)芯片、服務(wù)器芯片、人工智能機(jī)器學(xué)習(xí)自研芯片三條產(chǎn)品線。

71b8-1d550e5caf107cfdb424376c088baad1.png

4代網(wǎng)絡(luò)芯片Nitro、3代服務(wù)器芯片Graviton、1代AI推理芯片、1代AI訓(xùn)練芯片,這是AWS迄今公布的云計(jì)算底座自研芯片版圖。

值得注意的是,AWS絕非“PPT造芯”,而是通過(guò)云實(shí)例將芯片的價(jià)值快速導(dǎo)向客戶。今年,AWS發(fā)布了C7g、Trn1等一系列新實(shí)例,并推出Nitro的SSD硬盤。

“自研芯片是需要經(jīng)驗(yàn)積累的,并不是你花錢就能買來(lái)的,也并不是你著急很快就能實(shí)現(xiàn)?!痹?021 re:Invent全球大會(huì)媒體溝通會(huì)上,亞馬遜云科技大中華區(qū)產(chǎn)品部總經(jīng)理顧凡談到AWS在重構(gòu)自研芯片中的最大優(yōu)勢(shì)——深刻理解云上所有客戶的工作負(fù)載,去逆向工作,設(shè)計(jì)芯片。

對(duì)于AWS的造芯歷程以及背后邏輯,亞馬遜云科技大中華區(qū)產(chǎn)品部計(jì)算與存儲(chǔ)總監(jiān)周舸進(jìn)行了詳細(xì)地解讀。

01.

自研CPU:以客戶需求為起點(diǎn),

兩大技術(shù)思路提升性能

AWS從自研芯片出發(fā)做云計(jì)算的創(chuàng)新,要從2006年發(fā)布第一個(gè)Amazon EC2 Instance說(shuō)起,這是一段由十人團(tuán)隊(duì)開始的Amazon EC2旅程。

隨著客戶對(duì)Amazon EC2提出更多要求,AWS持續(xù)地增加了很多機(jī)型,包括給SAP用的超過(guò)24TB最大內(nèi)存的實(shí)例、專為轉(zhuǎn)碼業(yè)務(wù)提供的VT1、基于Arm的蘋果最新M1芯片提供的新實(shí)例等。

這些實(shí)例多樣化創(chuàng)新的不斷深入,令A(yù)WS團(tuán)隊(duì)意識(shí)到,必須專注到芯片研發(fā)的本身,從芯片的創(chuàng)新開始。于是從2013年至今,AWS不斷基于自研芯片推出新的實(shí)例,以提供更高性價(jià)比。

2019年,AWS發(fā)布第二代服務(wù)器芯片Graviton,其實(shí)例上市后,客戶把更多不同的應(yīng)用方式部署到Graviton上,跨越的范圍也進(jìn)一步擴(kuò)展,從當(dāng)初的Cache到Web一直延伸到數(shù)據(jù)分析,乃至機(jī)器學(xué)習(xí)和高性能計(jì)算的工作負(fù)載。

為了幫客戶更好地使用新實(shí)例,AWS將更多的管理服務(wù)和Graviton做深入集成,使得客戶能快速用起來(lái)。結(jié)果,很多客戶只用一兩天時(shí)間,就能完成從x86到Arm的轉(zhuǎn)移。

在今年的re:Invent大會(huì)上,AWS發(fā)布了4個(gè)基于Graviton2的新實(shí)例,包括1TB內(nèi)存的X2gd、由Graviton2和英偉達(dá)GPU提供支持的G5g等。Is第四代的實(shí)例中有Is4gen和Im4gn,也采用的是Graviton2處理器。

Graviton2有300億個(gè)晶體管,新一代Graviton3又增加了200億,共擁有500億個(gè)晶體管。

C7g是第一個(gè)針對(duì)Graviton3的實(shí)例,其突破有多處重點(diǎn),包括性能較上一代提升超25%,浮點(diǎn)運(yùn)算能力提升超過(guò)兩倍。在內(nèi)存上,C7g也是云上第一個(gè)支持DDR5的新的計(jì)算實(shí)例。

亞馬遜云科技大中華區(qū)產(chǎn)品部計(jì)算與存儲(chǔ)總監(jiān)周舸也分享了Graviton的技術(shù)創(chuàng)新,相同Arm微架構(gòu)不代表能做出相同的CPU,芯片設(shè)計(jì)時(shí)必須有自己的思考,AWS的原則是,從工作負(fù)載去看,從客戶真正實(shí)際使用情況,去找到設(shè)計(jì)的起點(diǎn)。

在過(guò)去的20年里面,提升CPU性能最容易的兩個(gè)方向,一是提高頻率,二是增加內(nèi)核數(shù)量。

大多數(shù)時(shí)候,提高頻率很容易讓性能得到提升,但問(wèn)題是,以現(xiàn)有半導(dǎo)體的功率和能力,提高頻率意味著會(huì)提高很多頻率、熱量,需要搭配很大的電源及散熱配置。

在像云這樣的超大規(guī)模數(shù)據(jù)中心,這將帶來(lái)大量的耗電、能耗,降低了云的效率,并對(duì)散熱效率提出更高要求,最終致使客戶的使用成本上升。“所以這是我們非常謹(jǐn)慎的在選擇頻率提升的時(shí)候的一個(gè)主要原因。”周舸說(shuō)。

如果不做頻率的提升,那還有別的什么選項(xiàng)呢?

AWS的答案是,希望讓內(nèi)核的寬度得以增加,即使用指令并行的方式,希望其內(nèi)核在同一個(gè)時(shí)鐘周期中能夠執(zhí)行更多的指令、完成更多的任務(wù)。

比如從一個(gè)時(shí)間周期執(zhí)行5個(gè)指令提升到執(zhí)行8個(gè)指令,所以同一個(gè)時(shí)間里面能做更多事,這也能給最后的性能帶來(lái)很大變化。

使用指令并行時(shí),如果應(yīng)用程序的編譯能夠發(fā)揮出指令并行的優(yōu)勢(shì),效果會(huì)非常明顯。Nginx和Groovy差不多提升了60%,甚至Redshift也可以提升超過(guò)25%。

在同一個(gè)周期里面,AWS讓它有機(jī)會(huì)執(zhí)行更多的指令,也讓同一個(gè)指令執(zhí)行時(shí)能夠執(zhí)行更多的數(shù)據(jù),它就會(huì)更快地完成視頻、圖像等處理、轉(zhuǎn)碼以及一些機(jī)器學(xué)習(xí)和高性能計(jì)算的過(guò)程。

結(jié)果可見,x264、x265視頻編碼性能提升50%左右,AES-256加密性能提升了61%。這都是通過(guò)指令并行和同一個(gè)指令里面加載更多的數(shù)據(jù)量的處理能力來(lái)實(shí)現(xiàn)的,而沒(méi)有靠頻率提升。

增加核數(shù)是提升性能的另一個(gè)快而有效的方法。

從第一代Graviton到第二代,AWS增加了不少核數(shù),效果還不錯(cuò)。到第三代時(shí),AWS團(tuán)隊(duì)研究了真正在Graviton2上運(yùn)行的客戶工作負(fù)載,發(fā)現(xiàn)其中大量的工作負(fù)載里是大數(shù)據(jù)的、微服務(wù)架構(gòu)的等等,還有些高性能計(jì)算服務(wù),這些服務(wù)對(duì)于內(nèi)存帶寬和延時(shí)敏感度非常高。

因此,AWS團(tuán)隊(duì)做出判斷:在內(nèi)存下功夫,會(huì)比增加核數(shù)的效果更快。

新的選擇題出現(xiàn):用余下晶體管去增加更多核,還是去增加CPU的內(nèi)存帶寬和降低延遲?

最終,AWS團(tuán)隊(duì)選擇了內(nèi)存。相對(duì)于Graviton2以及英特爾的Tool平臺(tái),其內(nèi)存帶寬提升了50%,這在很多應(yīng)用上的效果非常直接。

一些早期用過(guò)的客戶分享了Graviton3給他們帶來(lái)的幫助。如Twitter表示其性能提升20%~80%,甚至在降低尾延遲方面可以降低至少35%,這對(duì)內(nèi)存延遲非常敏感;F1方程式在做流體仿真時(shí)用的是Graviton2,已經(jīng)比英特爾的平臺(tái)快很多,這次它用C7g又可以提升40%;Epic《堡壘之夜》的游戲性能體驗(yàn)也大幅提升。

還有一個(gè)重要指標(biāo)是讓功耗降低60%。這將維持更高能效比,且客戶不會(huì)付出很高的成本代價(jià)。

Graviton的大量使用,已經(jīng)衍生到了非常多的工作負(fù)載中。如SAP HANA Cloud使用Graviton,去幫助企業(yè)級(jí)的客戶提升運(yùn)營(yíng)效率、提高性能。

同時(shí),今年AWS在re:Invent上面也宣布了其連續(xù)第四年獲得了HPC最佳云平臺(tái)的大獎(jiǎng),Graviton還在11月底獲得中國(guó)計(jì)算機(jī)學(xué)會(huì)高性能計(jì)算委員會(huì)頒發(fā)的產(chǎn)品創(chuàng)新獎(jiǎng)。

C7g實(shí)例通過(guò)支持BFloat16,使得Graviton3的機(jī)器學(xué)習(xí)推理性能幾乎比上一代提升快4倍。

02.

自研AI芯片:優(yōu)化內(nèi)存和網(wǎng)絡(luò),

加速適配機(jī)器學(xué)習(xí)需求

在提升服務(wù)器芯片AI算力的同時(shí),AWS正持續(xù)優(yōu)化其AI芯片及相關(guān)實(shí)例的性能。

面對(duì)AI訓(xùn)練和推理,AWS有不同的實(shí)例。除了其P4d、inf1實(shí)例用在推理,通用CPU的推理使用也越來(lái)越多,包括C6i和C6g;在訓(xùn)練方面,AWS推出了具備EC2超級(jí)集群能力的P4d和基于英特爾AI芯片Habana驅(qū)動(dòng)的DL1。

2019年,AWS發(fā)布基于其自研云端AI推理芯片Inferentia的Amazon EC2 Inf1實(shí)例,如今該實(shí)例已經(jīng)被很多中國(guó)客戶用于做推理。

今年剛剛推出的Trn1,是基于AWS自研云端訓(xùn)練芯片Trainium的實(shí)例。近年機(jī)器學(xué)習(xí)發(fā)展飛速,其配套的各種專業(yè)加速芯片隨之發(fā)展迅猛。每年機(jī)器學(xué)習(xí)專用芯片的演進(jìn)提升速度都超翻倍,比通用CPU快得多。

可是挑戰(zhàn)是,機(jī)器學(xué)習(xí)這個(gè)模型的復(fù)雜度是呈10倍地成長(zhǎng),光靠GPU、加速芯片本身的加速,已經(jīng)不足以跟得上這個(gè)速度。

因此要讓機(jī)器學(xué)習(xí)訓(xùn)練能力大幅提升,關(guān)鍵是并行訓(xùn)練。這意味著不僅要提升專用芯片本身的性能,還要解決內(nèi)存和網(wǎng)絡(luò)兩大難點(diǎn),構(gòu)建更適合這些芯片發(fā)揮的網(wǎng)絡(luò)環(huán)境和它配套的所有服務(wù)。

內(nèi)存方面,從P3dn開始,AWS的內(nèi)存一直在增加。到今年Trn1內(nèi)存已是512G。

網(wǎng)絡(luò)方面,AWS幾年前就推出了100G的網(wǎng)絡(luò),到p4d時(shí)去年做了400G的網(wǎng)絡(luò),全新發(fā)布的Trn1首次將帶寬增至800G,Trn1n更是可以到1600G,基于其EFA,AWS可以讓機(jī)器學(xué)習(xí)的設(shè)備組在一個(gè)架構(gòu)中,提高分布式高性能計(jì)算和機(jī)器學(xué)習(xí)工作負(fù)載的吞吐量和可擴(kuò)展性。

從效果上來(lái)看,一個(gè)典型大模型GPT-3需要兩周的訓(xùn)練周期,用P3dn需要600個(gè)實(shí)例,P4d已經(jīng)降至128個(gè)實(shí)例,Trn1n繼續(xù)下降到96個(gè)實(shí)例。實(shí)例數(shù)大幅減少后,成本會(huì)明顯節(jié)約。

值得注意的是,P3dn跑訓(xùn)練時(shí),49%的開銷花在了實(shí)例之間的通信。P4d把網(wǎng)絡(luò)性能提升后,還剩14%的開銷。到Trn1n,只有7%的開銷會(huì)用到網(wǎng)絡(luò)通信上面。

這帶來(lái)的好處是,AWS可用更大的集群、更多的卡同時(shí)去訓(xùn)練,真正明顯縮短訓(xùn)練時(shí)間。P4d最多可用4000個(gè)卡同時(shí)訓(xùn)練,Trn1n則將這個(gè)指標(biāo)提升到了1萬(wàn)張,這也是一個(gè)巨大的進(jìn)步。

如今,每天有超過(guò)6000萬(wàn)個(gè)全新實(shí)例在Amazon EC2實(shí)上運(yùn)轉(zhuǎn),這是2019年的兩倍,而這一切都來(lái)自于網(wǎng)絡(luò)本身的創(chuàng)新。

03.

自研SSD:統(tǒng)一監(jiān)控運(yùn)行指標(biāo),

降低bug風(fēng)險(xiǎn)

Nitro芯片是AWS網(wǎng)絡(luò)創(chuàng)新的起點(diǎn),前文談及的從100G、400G、800G到1600G都離不開Nitro。

這個(gè)已經(jīng)推出四代的網(wǎng)絡(luò)芯片幫助AWS解決了很多問(wèn)題,包括提供了統(tǒng)一的安全性平臺(tái),無(wú)論使用什么樣的CPU計(jì)算平臺(tái),都可以獲得一致的安全性、一致的VPC接入能力、一致的API的統(tǒng)一性等等。

Nitro也可以幫助提高存儲(chǔ)的性能。

第一塊硬盤在1956年時(shí)相當(dāng)巨大,后來(lái)逐漸發(fā)展成像一個(gè)唱機(jī)大小的磁盤,數(shù)據(jù)中心中很多大數(shù)據(jù)都存儲(chǔ)在這樣的磁盤里面。隨著應(yīng)用的發(fā)展,數(shù)據(jù)中心對(duì)IO吞吐的需求越來(lái)越高,擅長(zhǎng)于此的SSD被越來(lái)越多地采用到存儲(chǔ)設(shè)備中。

SSD用半導(dǎo)體存數(shù)據(jù),其閃存轉(zhuǎn)換層(FTL)會(huì)控制將數(shù)據(jù)從邏輯地址到物理地址的轉(zhuǎn)換。這里特別容易發(fā)生兩件事:一是垃圾回收,擦寫時(shí)要將相應(yīng)空間釋放出來(lái);二是磨損平衡,控制每個(gè)數(shù)據(jù)塊使用頻率差不多,能被較均衡地磨損掉。

過(guò)去,AWS使用的大量SSD硬盤來(lái)自很多供應(yīng)商,各家FTL控制機(jī)制不同,甚至每種盤的FTL都可能不一樣。如果FTL中有bug要修復(fù),只能等到原廠來(lái)做這個(gè)事,時(shí)間就會(huì)很不可控,連帶著AWS對(duì)客戶提供服務(wù)保障會(huì)變得更困難。

此外,不同F(xiàn)TL的有些功能實(shí)現(xiàn)邏輯不一致,可能會(huì)在不同的時(shí)間啟動(dòng)垃圾回收、碎片回收、磨損均衡等功能,一旦突然啟動(dòng)了這個(gè)功能,客戶正在使用這個(gè)盤時(shí),去請(qǐng)求的工作就會(huì)被中斷掉,這對(duì)客戶的使用會(huì)造成非常大的干擾。

同一個(gè)應(yīng)用,當(dāng)使用不同盤時(shí),性能是不一樣的。因此AWS用Nitro SSD,通過(guò)統(tǒng)一的FTL來(lái)解決這些問(wèn)題,自己解決bug,避免客戶被干擾。

AWS第一代Nitro SSD在2017年就做出來(lái)了,目前其整個(gè)云體系部署了超過(guò)50萬(wàn)個(gè)Nitro SSD,第二代Nitro SSD在今年的re:Invent大會(huì)上剛剛發(fā)布?;谟⑻貭柶脚_(tái)的I4i以及基于Graviton2的Im4gn/Is4gen機(jī)型都用到新的Nitro SSD。

Nitro SSD帶來(lái)直觀的性能提升,相比上一代I3實(shí)例,新實(shí)例I/O延遲降低了60%,延遲可變性降低了75%。

EBS存儲(chǔ)服務(wù)也使用Nitro SSD來(lái)提升性能。比如今年正式投入市場(chǎng)的io2 Block Express就使用了Nitro SSD,最終獲得256k IOPS及非常穩(wěn)定的毫秒級(jí)延時(shí)。

從上圖可見,其跑PostgreSQL時(shí)性能可提升2.4倍以上,甚至在SQL上性能更好。據(jù)其客戶分享,如果用R5B的Instance加上io2,是在云上面跑SQLServer最合適的選擇,性能提升了5倍。

2006年,AWS發(fā)布第一個(gè)云服務(wù)Amazon S3對(duì)象存儲(chǔ),這也是AWS存儲(chǔ)的起點(diǎn)。

如今越來(lái)越多的工作負(fù)載開始移到云上,需要Amazon S3支持。今年AWS又推了兩個(gè)新的存儲(chǔ)層:一是把用于歸檔數(shù)據(jù)的Glacier做了一個(gè)可及時(shí)索引的分層,既能像熱數(shù)據(jù)般快速索引調(diào)用,又能像歸檔存儲(chǔ)一樣長(zhǎng)期保持超低成本。

AWS S3智能分層也覆蓋到新的層,當(dāng)前提供8個(gè)存儲(chǔ)層,可滿足各種存儲(chǔ)需求。S3中裝有10^14個(gè)對(duì)象,相當(dāng)于全球每個(gè)人可攤1.3萬(wàn)個(gè)對(duì)象,宇宙中有2萬(wàn)億星星,每個(gè)星星可攤5個(gè)對(duì)象。

在如此大的規(guī)模中,如何讓客戶保持那么高的可用性和一致的性能?將如此多的對(duì)象完全分布在數(shù)百萬(wàn)的硬盤上,正是Amazon S3的機(jī)制,使其從第一天開始就能提供非常高的穩(wěn)定性、可靠性和性能。

04.

結(jié)語(yǔ):一切從芯片創(chuàng)新開始

從CPU到加速芯片再到存儲(chǔ),這些AWS基礎(chǔ)底層技術(shù)的進(jìn)化都是從芯片創(chuàng)新開始的?;谶@樣的創(chuàng)新底座,AWS發(fā)展到如今的規(guī)模,仍能做到高效、安全、持續(xù)的創(chuàng)新。

在這些計(jì)算、存儲(chǔ)、數(shù)據(jù)相關(guān)的服務(wù)打破各種創(chuàng)新邊界的同時(shí),新的約束正亟待突破。這些約束在于很多的物理地域、法規(guī)中,比如數(shù)據(jù)要存在本地的法規(guī)要求,以及各種距離產(chǎn)生延時(shí)、網(wǎng)絡(luò)帶寬、連接穩(wěn)定性等等。

AWS也在通過(guò)一系列產(chǎn)品布局解決這些問(wèn)題。比如與AWS WaveLength可服務(wù)超低延時(shí)的5G邊緣應(yīng)用,Outposts將AWS的能力擴(kuò)展至客戶自己的數(shù)據(jù)中心;Cloud WAN使客戶通過(guò)中央控制面板更輕松地將地面復(fù)雜網(wǎng)絡(luò)連接到云;Snowball設(shè)備可實(shí)現(xiàn)一周遷移數(shù)TB數(shù)據(jù);Ground Station衛(wèi)星通信運(yùn)營(yíng)服務(wù)更是沖出地球,覆蓋到衛(wèi)星通信與數(shù)據(jù)處理……

今天,AWS在有25個(gè)區(qū)域,覆蓋全球六大洲,提供了81個(gè)可用區(qū),接下來(lái)還會(huì)在提供9個(gè)新的服務(wù)區(qū),同時(shí)提供有30個(gè)Local Zones本地區(qū)域?;谛酒瑒?chuàng)新的基石,AWS正通過(guò)在云基礎(chǔ)設(shè)施上持續(xù)推陳出新,幫助云上用戶探索更遠(yuǎn)的邊界。




最后文章空三行圖片.jpg


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。