編輯:桃子
【新智元導讀】Science合作期刊Intelligent Computing發表新論文,中國科學院計算所徐志偉教授牽頭組織的“低熵雲計算”專輯正式出版,收入了來自中國科學院計算所、中國科學院深圳先進技術研究院、香港中文大學、鵬城實驗室、天津大學等單位的五篇投稿,得到了孫凝晖院士、陳雲霁研究員、包雲崗研究員等知名學者的支持,系統的介紹了“低熵雲計算”的技術内涵。此外,西安電子科技大學韓根全教授及其合作者發表用于智能計算的鐵電器件相關綜述,郝躍院士作為共同作者參與了論文發表。“低熵雲計算”專輯簡介
傳統的雲計算系統常常存在高熵問題,究其原因是雲計算系統中存在的三類無序現象:負載幹擾、系統抖動和阻抗不匹配。這種無序混亂使當前雲計算系統難以同時滿足高利用率和低延遲的要求。應用程序經常需要超額占有雲資源,有時甚至超出實際需要的數倍以保障其服務質量。而超額申請的資源往往會成為滞留資源,雖然從未使用過,但也不能分配給其他應用程序,極大地拉低了數據中心的資源利用率。
本期專輯中的五篇論文介紹了低熵雲計算的進展,提出了一個解決上述高熵問題的新概念系統。低熵雲計算系統包括:可以在硬件層實現區分、隔離和優先化(DIP)約束的标簽化處理器架構、提供10倍速增長的标簽化網絡棧、可以顯著降低尾延遲的用于配置自動調優的機器學習方法、可以用控制模式約束限制編程熵的分形并行模型 (FPM)、以及新的基準套件SDCBench。這些論文涉及系統基準測試和熵測量、處理器架構、系統軟件、應用程序框架和各種工作負載的評估結果。上述技術内容共同表明,低熵雲計算技術可以同時增強用戶體驗和資源利用率。
1. 一種支持低熵雲的标簽化體系結構:理論、實踐與經驗
在過去的十年中,資源效率和服務質量(QoS)都是雲計算供應商長期追求的目标。然而,直到今天,幾乎沒有一個雲平台能夠完美兼顧這些目标。提高資源效率或資源利用率通常會導緻雲應用在不同資源上(從底層硬件到軟件堆棧)發生複雜的資源競争,從而導緻嚴重的性能下降。低熵雲系統提出了一種新的軟硬件協同技術棧,從下至上全面降低性能幹擾,同時獲得高資源效率和高質量的應用性能。
本文介紹了一種新的支持低熵雲的計算機體系結構,稱為标簽化馮諾依曼體系結構 (LvNA, Labeled von Neumann Architecture),該架構在計算機系統内部集成了一套标簽驅動的控制機制,能夠在系統共享資源上實現區分、隔離、優先處理應用程序請求。利用标簽化機制,LvNA能夠在提高資源利用率的同時,保護特定應用 (如延遲敏感型應用)的性能不受無序資源競争的影響。基于LvNA的設計,我們流片了一個1.2GHz 8核RISC-V處理器BEIHAI。實驗結果表明,BEIHAI能夠将内存帶寬競争導緻的性能下降從82.8%大幅降低到0.4%。當CPU利用率提高70%以上時,BEIHAI可以将延遲敏感型應用Redis的99分位延遲從115 ms降低到18.1 ms。此外,BEIHAI還可以實現無需軟件Hypervisor支持下,同時啟動兩個未修改的虛拟機。
圖一:LvNA的标簽驅動控制機制
2. 基于排隊理論的低熵标簽化網絡棧的性能分析
理論建模是對計算機系統進行量化分析和性能預測的一種流行的方法,同樣适用于雲計算系統。随着雲計算系統的發展,“低熵雲”正在成為一種新的趨勢。基于LNS (Labeled Network Stack)的服務器是“低熵雲”的一個範例,它的性能比基于傳統網絡棧的服務器有數量級的提升。但我們仍需弄清:1)相對于學術界典型的用戶态協議棧mTCP和工業界主流的Linux内核協議棧,LNS的低尾延遲和低熵的主要來源是什麼;2) LNS還可以進一步優化多少。為此,我們提出了一種定義瓶頸階段的排隊論分析方法來簡化尾延遲的量化分析。在該分析方法的指導思想下,我們以突發流量為例,使用非侵入式的基礎測試獲取網絡服務各階段處理速度,基于負載和系統特征識别處理速度最慢的瓶頸階段,對基于LNS的服務器、基于mTCP的服務器和基于Linux的服務器分别建立了能感知階段處理速度變化的模型。模型揭示,全路徑優先化處理和全程零拷貝是基于LNS的服務器的低尾延遲和低熵的主要來源,其99分位尾延遲與實際測量的誤差範圍在0.8%–24.4%。此外,基于LNS的服務器的模型可以提供訪問數據庫的最佳工作線程數,使其并發度提高了2.1–3.5倍。
圖二:瞬時突發請求的數量對所建模的三台服務器的99分位尾延遲的影響。“LNS”、“mTCP”和“Linux”代表延遲敏感請求的99分位尾延遲的測量值;“-model”後綴代表模型預測值;“-1”後綴代表全部的請求。
3. 基于貝葉斯優化的流數據處理系統資源配置調優
大數據時代,流數據處理系統越來越受歡迎。像Apache Flink這樣的流處理系統通常會提供一定數量(比如30個)的配置參數來靈活地指定分配給任務的資源數量(比如CPU核數和内存大小),這些參數對任務性能有較大影響。但是,對于運行在給定集群上的未知程序,手動對這些參數進行調優以獲得最佳性能是很困難的,因此需要一種自動且快速的資源配置調優方法。為此,我們提出利用貝葉斯優化方法來自動對流數據處理系統的資源配置進行調優。我們首先選擇一個機器學習模型—随機森林,來為流數據處理程序構建精确的性能模型。随後,我們使用貝葉斯優化(BO)算法,結合性能模型,通過叠代搜索得到流數據處理程序的最優配置。實驗結果表明,對于第99個百分位的尾延遲,該方法平均提高了2.62倍,最大提高了5.26倍。此外,對于程序的吞吐量,我們的方法平均提高了1.05倍,最大提高了1.21倍。
圖三:所有程序 — WordCount (WC),Identity(ID),RePartition(RP)和FixWindow (FW)的性能比較 — 默認配置(DEF):貝葉斯優化算法(BOA)和改進的爬山法(MHC).
4. 分形并行計算
随着機器學習(ML, Machine Learning)技術的興起,雲、邊、端一系列應用場景需要開發各種規模的專用ML計算機。然而,傳統ML計算機異構、并行和多層次的特性使得開發成本集中在了軟件棧上(例如ML框架、計算庫和編譯器),限制了新型ML計算機的研發。在前期工作中,我們提出了分形馮·諾伊曼體系結構(FvNA, Fractal von Neumann Architecture)來解決ML計算機的編程效率問題。FvNA在編程時具有規模不變性,因此在一系列不同規模尺度的ML計算機上開發軟件就如同在單節點計算機上開發一樣簡單。
本研究将FvNA向通用并行計算領域推廣。我們将FvNA建模為一個抽象的并行計算模型,稱為分形并行機(FPM, Fractal Parallel Machine)模型,随後展示了幾個典型的通用領域并行計算任務在FPM上的高效編程實現。FPM通過對并行計算系統的控制模式施加額外約束來降低并行程序的熵;盡管如此,FPM仍然具有通用性,并且在許多情況下能夠以最優開銷完成任務。初步結果表明,FPM與許多基本的并行計算模型(如BSP和交替圖靈機)一樣強大。因此,我們得以說明FvNA也普遍适用于ML以外的各種領域。
5. SDCBench:用于數據中心工作負載托管和評估的基準套件
數據中心通常通過工作負載的混部來提高系統資源利用率。然而,共享資源争用會導緻難以預測的應用程序性能下降,從而制約混部技術所帶來的效益改善。如何提高數據中心的隔離能力這一問題在近年來引發了一系列硬件和軟件技術的相關研究,目前仍然缺乏一個全面的基準測試套件來評估這些方法。
為了解決這個問題,我們提出了SDCBench,一個專門面向數據中心負載混部和刻畫而設計的新的基準評測套件。SDCBench基于聚類分析方法從現有的基準評測程序集中精心挑選了16個基準應用程序,能夠覆蓋各類常見的雲業務場景。SDCBench利用一套統計學方法來支持工作負載的混部和評測,并首次提出了延遲熵的概念來衡量雲計算系統的隔離能力。SDCBench能夠幫助雲租戶了解數據中心的性能隔離能力,從而選擇最适合自身業務的雲服務。SDCBench也有助于雲服務器提供商其改善産品服務質量,增加運營收入。實驗結果表明,SDCBench可以通過簡單的操作和配置來對多種維度的資源施加壓力,從而模拟多樣化的雲負載混部場景。我們還基于SDCBench對華為雲、AWS雲和低熵雲原型系統FlameCluser-II三個平台進行了應用延遲熵的對比,評估結果表明FlameCluser-II在三種雲系統中具有最好的性能隔離能力,達到了較低的延遲熵水平。
圖四:SDCBench總覽
用于智能計算的鐵電器件
晶體管的縮小正在接近其物理極限,阻礙了計算能力的進一步發展。在後摩爾時代,新興的邏輯和存儲器件已經成為擴展智能計算能力的基本硬件。本文回顧了用于智能計算的鐵電器件的最新進展,闡明了鐵電器件的材料特性和電學特性,随後讨論了可用于智能計算的新型鐵電材料和器件。作者對用于低功耗邏輯、高性能存儲器和神經形态應用的鐵電電容器、晶體管和隧道結器件進行了全面的回顧和比較。此外,為了給開發基于鐵電的高性能智能計算系統提供有益的指導,作者總結讨論了實現用于高效計算的超大規模鐵電器件的關鍵挑戰。
圖五:(a)使用馮·諾伊曼架構的現代計算機面臨的挑戰 (b)基于鐵電器件的“熱牆”,”内存牆”和馮·諾伊曼瓶頸的解決方案示意圖
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!