算力時代,靠吃「硬件紅利」便能搞定新應(yīng)用場景的「甜蜜期」已經(jīng)過去。
人類社會的每一次科技躍遷,其本質(zhì)都是計算力的突破與演進。
算盤撥出農(nóng)耕文明的繁榮,機械計算機催生出第一次工業(yè)革命的裊裊蒸汽,而云計算的發(fā)展讓萬物互聯(lián)成為真正可能。
在數(shù)據(jù)爆發(fā)式增長以及算法日益精進的大背景下,屬于「算力」的時代儼然到來。
以音視頻行業(yè)為例,趨近飽和的場景滲透率、用戶對體驗的極致追求、多元化的場景及技術(shù)需求,為底層算力和視頻編碼能力帶來更大的挑戰(zhàn)。
然而,在算力需求暴漲的同時,摩爾定律的演進速度卻在放緩,「硬件紅利」已然見底。
對于整個視頻云賽道的算力困局,不僅需要上層軟件系統(tǒng)的優(yōu)化,也需要在底層硬件基礎(chǔ)設(shè)施上,尋求破局之法。
風口之下的算力困境
我們已經(jīng)邁入社會視頻化時代。視頻無處不在,由此產(chǎn)生的流量已呈井噴式增長。
據(jù)《2022 年中國網(wǎng)絡(luò)視聽發(fā)展研究報告》披露,截至 2021年12月,我國網(wǎng)絡(luò)視頻(含短視頻)用戶規(guī)模達9.75 億,較2020年12月增長4794萬,占網(wǎng)民整體的94.5%。
網(wǎng)絡(luò)視聽正成為大眾的娛樂剛需,視頻正在成為各行業(yè)連接客戶最廣泛的載體,也成為各巨頭搶占風口的關(guān)鍵點。
而在5G時代,視頻流量將進一步增長。
視頻流量激增的另一大原因,是用戶對視頻體驗的「不將就」。在視頻規(guī)模持續(xù)增長的同時,隨著網(wǎng)絡(luò)和終端硬件設(shè)備的迭代,用戶對視頻清晰度體驗的追求持續(xù)提升;視頻超高清化也是繼視頻數(shù)字化之后的新一輪重大技術(shù)革新。
移動互聯(lián)網(wǎng)終端觀看分辨率從最開始的360P,480P,快速提升到720P,1080P 以及近年出現(xiàn)的4K/8K超高清視頻。
當前,國家也連續(xù)出臺超高清產(chǎn)業(yè)支持措施并加速應(yīng)用,如:5G+8K超高清技術(shù)在冬奧會和春晚實現(xiàn)商用;體育直播開始進入到4K HDR直播時代。
除了高分辨率,沉浸式視頻體驗還追求高幀率和寬色域,而每一次分辨率的提升,幀率的提升,色域增加帶來的都是視頻信息量的成倍增加。
因此,需要技術(shù)解決方案能更快應(yīng)對更高清晰度、更低時延的視頻編解碼和轉(zhuǎn)碼,滿足高清、高幀率、寬色域視頻所帶來的不斷“擴容”的音視頻數(shù)據(jù)流。
難以調(diào)和的「視頻編解碼」矛盾
由于Raw視頻數(shù)據(jù)(原始圖像編碼數(shù)據(jù))是非常大的,如果不進行編碼和壓縮,不論是視頻的存儲還是傳輸,都將帶來很大的麻煩,視頻編碼技術(shù)便是由此而來。
視頻編解碼起源于廣播電視,從1951年第一部數(shù)字電視和廣播誕生起,廣播電視在很長一段時間里是視頻編解碼技術(shù)變革的核心推動力。
而到互聯(lián)網(wǎng)時代,隨著互聯(lián)網(wǎng)的高速發(fā)展,使用互聯(lián)網(wǎng)的用戶和視頻流量出現(xiàn)井噴式增長,互聯(lián)網(wǎng)成為視頻編碼的主戰(zhàn)場。
為了應(yīng)對視頻流量的不斷增長,視頻標準組織一直在推動視頻編碼技術(shù)的持續(xù)迭代。
從MPEG2開始,視頻編碼標準壓縮率大約每10年提升50%,以2021年推出的h.266 為例:相對于h.265壓縮率提升50%,但其編碼計算成本提升15倍。
然而,用戶對視頻極致體驗的追求與視頻編碼的演進其實存在著巨大的矛盾。
- 編碼標準升級速度遠慢于視頻信息量膨脹的速度:「十年磨一劍」的視頻編解碼技術(shù)(10年50%壓縮率的提升)已經(jīng)遠遠慢于視頻化和體驗升級帶來的流量增長(過去3年音視頻流量已高達68.9%的增速),而未來帶寬壓力會越來越大。
- 新編碼標準壓縮率的提升遠低于視頻分辨率提升的速度:每一代編碼標準的演進,都是在不斷探索極限壓縮率。新一代的編碼標準對比上一代的標準通常有 50% 的壓縮率提升。然而如果視頻分辨率每提升一檔,比如360P到720P,則會使信息量增加 4 倍。
- 新編碼標準復雜度的增加遠高于CPU處理能力的增加:新一代的編碼標準對比上一代的標準大多增加10倍以上的復雜度,遠高于CPU處理能力的增強,而視頻編碼的高復雜度導致編碼技術(shù)難以普惠,尤其在實時場景。
隨著AR,VR時代的到來,4K-8K高分辨率,60-120FPS高幀率,10-12bit寬色域,讓視頻的信息量更是成倍增加;加之低延時意味著對編碼速度有更高的要求;而CPU芯片處理能力也不再遵循摩爾定律快速增長,視頻體驗極致化,與帶寬、計算成本、編碼速度等高要求之間的矛盾沖突會越來越嚴重。
軟硬協(xié)同,錨定性能升級
視頻編碼與視頻處理為計算密集型場景,面對視頻云賽道的算力困局,如何讓高壓縮率的編碼算法,更加普惠?
解法是:軟硬協(xié)同+深度自研編碼內(nèi)核。
在該方向,我們一直在持續(xù)優(yōu)化、迭代,而倚天ECS的出現(xiàn)帶來更好的答案。
2021年云棲大會,平頭哥半導體發(fā)布首顆為云而生的CPU芯片倚天710。倚天710單芯片容納高達600億晶體管;在芯片架構(gòu)上,基于ARMv9架構(gòu),內(nèi)含128核CPU,主頻最高達到3.2GHz,能同時兼顧性能和功耗。在內(nèi)存和接口方面,集成DDR5、PCIe5.0等技術(shù),能有效提升芯片的傳輸速率,并且可適配云的不同應(yīng)用場景。
經(jīng)過一年的業(yè)務(wù)驗證,倚天710已大規(guī)模部署并提供云上服務(wù),算力性價比提升超 30%,單位算力功耗降低60%。阿里云提供豐富的生態(tài)工具,支持全應(yīng)用生態(tài)適配,0代碼修改即可完成主流業(yè)務(wù)遷移。倚天710云實例已應(yīng)用于阿里巴巴集團核心業(yè)務(wù),并服務(wù)多家知名互聯(lián)網(wǎng)及科技公司。未來2年,阿里云20%的新增算力將使用自研CPU。
搭載倚天710的ECS實例自設(shè)計初就是一款云原生產(chǎn)品,憑借其靈活、先進、彈性的云原生芯片特性和優(yōu)異的CPU算力,超低功耗,與視頻云的轉(zhuǎn)碼服務(wù)特點強匹配,為視頻云云原生轉(zhuǎn)碼業(yè)務(wù)帶來更多可能。
基于倚天ECS,阿里云視頻云與平頭哥團隊聯(lián)合,對s264、s265編碼器進行深度優(yōu)化。
最終實現(xiàn):相對于c7云實例,轉(zhuǎn)碼性能提升30%,在8K直播場景中提升達到33%,助力更普惠,更高清的轉(zhuǎn)碼服務(wù)。
那么,具體是如何做到的呢?我們一起來看下倚天710加持的這款云原生產(chǎn)品,如何為視頻云云原生轉(zhuǎn)碼帶來更多想象空間。
128核心均為物理核,獨享計算單元
倚天710單顆CPU即實現(xiàn)了128核的高密度設(shè)計,高并發(fā)負載下可實現(xiàn)高線性度性能增長;同時處理器無超線程概念,避免了性能爭搶的問題:獨享物理核,性能更強勁。
傳統(tǒng)CPU架構(gòu)是兩個vCPU/HT共享一個物理核,1份ALU。ECS倚天實例采用的是獨享物理核心方式,這可以讓算力密集的計算指令不必排隊、不必爭搶,計算速度更快。
獨享Cache,應(yīng)用緩存更高效,更大的獨享L1/L2 cache以及SLC cache容量,包括L1 64K+64K,L2 1M per core,SLC 128M
在Cache維度,過去兩個vCPU/HT共享一二級緩存,相互爭搶,性能波動較為嚴重。采用倚天710獨享Cache的設(shè)計,讓vCPU之間相互不影響,為重負載計算帶來更高性能。
高能效不降頻,即使高并發(fā)負載下每個核心仍然能夠保持穩(wěn)定的計算吞吐率
影響算力性能的關(guān)鍵因素,除了核的資源,還有主頻。
以視頻編碼為例,傳統(tǒng)架構(gòu)CPU在并發(fā)超過4路后,性能下降40%,這背后的原因是高算力負載很容易造成功耗過大,溫度上升,因此采用降頻規(guī)避,進而影響了性能。而倚天710功耗相比主流CPU有大幅下降,沒有任何降頻問題。
在視頻編解碼四路以上時,代表倚天的橙色部分基本保持恒定,其他主流CPU則會降低幅度40%。
高效的擴展指令集和可伸縮向量指令架構(gòu),提供強大算力
倚天710還針對特定算法場景進行了指令集加速與優(yōu)化。比如像SVE等矢量計算技術(shù),其中BF16/INT8 mmla指令可實現(xiàn)高效的矩陣乘法運算,此外還支持Hash、CRC32等加速指令,可以讓單條指令并行處理更多數(shù)據(jù),大幅提升視頻編解碼、AI編解碼增強等場景性能。
四維優(yōu)化,釋放「軟硬結(jié)合」最大效能
基于阿里自研的倚天710芯片進行優(yōu)化,通過深度重構(gòu)視頻編碼數(shù)據(jù)結(jié)構(gòu)、并行框架,重新調(diào)優(yōu)快速算法策略,從軟件、匯編、硬件層面跨層深度優(yōu)化,打造ARM友好的視頻編碼器的同時,塑造極致性能。
主要體現(xiàn)在以下四方面的核心優(yōu)化:
指令優(yōu)化
計算密集型的算子函數(shù)通過匯編實現(xiàn)單指令多數(shù)據(jù)操作優(yōu)化,除常規(guī)的SIMD匯編指令優(yōu)化外,基于倚天710的特點,在視頻編碼中充分利用可伸縮向量指令集,如mmla、dot、zip等, 通過優(yōu)化流水線排布,利用高吞吐低延時的指令優(yōu)勢,塑造更高的匯編加速比,總體性能提升40%。
例如:實現(xiàn)同樣的數(shù)據(jù)加載功能,充分利用倚天多流水線技術(shù)和高吞吐低延時的指令組合,實現(xiàn)數(shù)據(jù)加載效率提升60%:
訪存優(yōu)化
在訪存較為頻繁的算法接口中,結(jié)合倚天710 SVE寄存器的特性, 設(shè)計內(nèi)存預(yù)取算法以及數(shù)據(jù)訪問流程的優(yōu)化,可以大大減少內(nèi)存訪問次數(shù),從而提升代碼的執(zhí)行效率。
例如:在ME的搜索算法優(yōu)化中,如一次六邊形搜索,原先需要重復訪問多次內(nèi)存數(shù)據(jù),經(jīng)過內(nèi)存預(yù)取的算法優(yōu)化,把重復訪問的數(shù)據(jù)保存在倚天710的SVE寄存器中,運算時直接使用,可以減少3.8 倍的行訪問次數(shù)。
算法并行化
在計算密集型的算子函數(shù)進行了匯編指令優(yōu)化的基礎(chǔ)上,充分對有性能增益,但是仍然是串行處理數(shù)據(jù)的算法也進行了并行處理優(yōu)化,達成了軟硬件的深度結(jié)合,算法執(zhí)行效率大大提升。
例如:SDH的算法軟硬結(jié)合,通過SVE寄存器和P寄存器的使用,并行處理16個系數(shù),能夠快速計算得到最佳位置,性能提升了40%以上。
系統(tǒng)層優(yōu)化
在算法優(yōu)化的基礎(chǔ)上,針對視頻轉(zhuǎn)碼特點,結(jié)合倚天710平臺和視頻云特有場景下進行系統(tǒng)配置優(yōu)化,將二者結(jié)合的能力發(fā)揮到最大。
例如:系統(tǒng)的安全水位的控制,充分利用了倚天710物理核、不降頻、不共享緩存和ALU的特性,在高負載場景下仍然性能不下降,可以放心地提升安全水位,充分發(fā)揮芯片的計算能力,獲得更好的性能表現(xiàn)。
普惠算力 賦能千行百業(yè)視頻化
未來,我們將基于自研處理器,深度結(jié)合視頻云業(yè)務(wù),從架構(gòu)、指令、訪存等方面優(yōu)化設(shè)計,賦能視頻云業(yè)務(wù)升級發(fā)展。同時,深耕軟硬件結(jié)合提升自研芯片競爭力,優(yōu)化算法、加速庫、驅(qū)動、固件一體化設(shè)計,支持視頻云不斷探索創(chuàng)新音視頻技術(shù)。
目前倚天ECS已經(jīng)在視頻云點播上線,性能提升30%,壓縮率提升5%。借助倚天710的超強算力,倚天ECS在Saliencymap推理上成本低于G6ni 50% 以上,在窄帶高清的普惠化方面展現(xiàn)出了巨大空間。