精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

低延遲SSD上的快速圖處理

SSDFans ? 來源:SSDFans ? 2023-10-12 09:12 ? 次閱讀

一、背景

圖處理在社交媒體、導航、推薦等領域應用廣泛。很多場合下圖數據往往非常大以至于難以在單個機器的內存中存儲。分布式圖處理選擇將圖數據存儲在分布式集群的內存中;而與分布式圖處理不同,外部圖處理系統選擇在單臺機器上利用二級存儲來輔助存儲圖數據,同時也能提供與分布式圖處理相近或更優的性能。外部圖處理系統根據存儲方式可以進一步分為半外部系統和全外部系統。前者將圖數據中的頂點數據存儲在內存、邊數據存儲在SSD中;后者則將兩者都存儲在SSD中。本文提出的Blaze就屬于半外部系統。

二、問題

8587359e-688f-11ee-939d-92fbcf53809c.png

盡管現在新興的快速NVMe SSD提供了比過去的SSD更高的帶寬,但是現有的半外部圖處理系統不能充分利用這些快速SSD帶來的性能提升。本文通過實驗(上圖)發現主要問題為IO利用率低下,可以看出在兩個代表性的半外部處理系統中除了BFS算法以外其他例程的執行中IO帶寬(柱)都遠未達到快速SSD的最大帶寬(紅線)。

本文作者認為IO利用率低下的原因主要包含3個方面:計算傾斜、IO傾斜、IO快計算慢。

1. 計算傾斜

并行圖處理系統需要同步機制來避免并發更新算法相關的頂點數據時出現競爭。現有的半外部圖處理系統FlashGraph采用消息機制來解決同步問題,它為每個頂點分配了一個消息隊列,并按照頂點ID將每個頂點分派給一個計算線程。圖算法迭代性地執行,在執行的每一個迭代中頂點間通過消息通信;在迭代結束的時候系統處理這些消息,并根據處理的結果更新頂點數據。

對于FlashGraph而言,由于圖結構服從照冪律分布,一些線程需要比其他的處理更多消息,即計算傾斜。而(下一迭代的)IO必須得等待這種落伍線程完成處理才能開始。快速SSD在本輪迭代中的IO操作很可能比這個落伍線程完成的早,導致其空閑。

下圖的實驗證明快速SSD(Optane SSD)相較于低速SSD(圖中NAND SSD)帶來的帶寬提升(紅線為磁盤最大讀取帶寬)確實造成了上述問題,造成了IO更多的空閑。

85a2838a-688f-11ee-939d-92fbcf53809c.png

2. IO傾斜

為了更大的容量和帶寬,一些半外部圖處理系統會將邊數據分布在多塊磁盤中。而當IO負載不均的時候顯然會造成部分磁盤比其他磁盤完成IO更慢而造成其他磁盤的空閑。

另一個半外部圖處理系統Graphene采用了一種2D圖分區技術以將邊均勻地分配到每個分區,并將這些分區均勻分布到多個磁盤上。盡管其分布均勻,但是Graphene在執行采用了邊數據選擇性調度的算法的時候仍然受IO傾斜的影響。

下圖中的實驗證實了上述問題,圖中縱軸表示每輪迭代中各個磁盤間最大IO量減去最小IO量。盡管均勻分布的數據集可能有著低于1MB的傾斜,但對于其他冪律分布的圖則有著最大可達100MB的傾斜。

85b2ddc0-688f-11ee-939d-92fbcf53809c.png

3. IO快計算慢

Graphene為每個SSD分配了一個計算核心和一個IO核心,對于慢速SSD而言這樣的設計可以最大化IO帶寬;然而對于快速SSD而言這樣的設計導致計算速度比IO更慢,IO填滿緩沖區的速度比計算使用的速度更快,導致緩沖區填滿后IO必須等待新的緩沖區。

下圖中的實驗對比了計算的速度和存儲設備的讀取帶寬,可以看出計算的速度比快速SSD要慢得多,證明了上述問題。

85ce369c-688f-11ee-939d-92fbcf53809c.png

三、設計

1. Online binning

Blaze采用名為Online binning的機制應對計算傾斜的問題。Bin是存儲在內存中的數據結構,存儲了多條bin record,而bin record則是包含頂點ID和一個數值。Blaze在算法執行時根據目標頂點ID和用戶定義的scatter函數的返回值創建bin record,然后對頂點ID取模計算出需要進入的bin ID。填滿的bin被推入名為full_bins的并發隊列,由gather線程取出處理。每個gather線程獨自處理一個填滿的bin,以避免同步開銷。

2. 頁面交織

為了應對IO傾斜的問題,Blaze采用了頁面交織的存儲方式來存儲邊數據。頁面交織基本類似RAID 0的方式。Blaze將CSR格式存儲的邊數據以4KB粒度交織分布到多個SSD上。

3. Blaze整體執行流程

85dbaf7a-688f-11ee-939d-92fbcf53809c.png

圖算法一般按迭代執行,上圖提供了Blaze中每輪迭代中的處理流程。

作為輸入之一,算法程序會提供需要處理的頂點ID。為了接下來訪問各個頂點的邊列表,Blaze在第1步發動所有可用的線程將頂點ID集合轉換成其邊列表所在的磁盤頁面ID集合(即page frontier內容)。轉換完成后根據其磁盤頁面ID從SSD中訪問數據,寫入到空的IO buffer中,生成滿的IO buffer。Scatter線程取出填滿的IO buffer,計算并生成bin record裝入對應的bin,并將用完的IO buffer還給空IO buffer池。Gather線程取出填滿的bin并處理,根據處理結果修改算法相關的頂點數據。最后返回下一個迭代所需要處理的頂點集合。

四、實驗評估

1. 實驗設置

實驗測試平臺是一臺單處理器Intel Xeon Gold 6230,20核心,禁用超線程),96GB內存的機器,存儲配置了一塊960GB的快速SSD(Intel DC P4800X)。

對比的算法包含:BFS、PageRank、WCC、稀疏矩陣乘(SpMV)、BC。

數據集如下表所示:

85f980a4-688f-11ee-939d-92fbcf53809c.png

2. 系統對比

本文將Blaze與FlashGraph和Graphene分別作了對比計算了加速比,加速比如下圖所示(Graphene沒有實現BC算法所以沒做對比)。除了sk2005數據集中FlashGraph表現更優以外總體都有一定提升。sk2005數據集上的處理有著更高的局部性,FlashGraph的LRU頁面緩存借此減少了存儲訪問,而Blaze并沒有針對頁面緩存做專門的優化。

860d4210-688f-11ee-939d-92fbcf53809c.png

3. IO利用率

IO利用率的評估如下圖所示,可以看出Blaze的平均IO帶寬基本達到快速SSD的帶寬。

8618ede0-688f-11ee-939d-92fbcf53809c.png

4. 可擴展性

實驗表明Blaze的性能大致隨著核心數的增加而線性增長,除了少部分負載下(如sk2005上的BFS)較快地飽和了IO帶寬而不能擴張其性能。

862b70d2-688f-11ee-939d-92fbcf53809c.png

五、總結

本文提出了一個新的半外部圖處理系統Blaze。Blaze采用了全新的scatter-gather技術,online binning,解決了現有半外部圖處理系統應用快速SSD后不能充分利用其高帶寬的問題。






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19178

    瀏覽量

    229200
  • CSR
    CSR
    +關注

    關注

    3

    文章

    118

    瀏覽量

    69602
  • SSD
    SSD
    +關注

    關注

    20

    文章

    2851

    瀏覽量

    117250
  • BFS
    BFS
    +關注

    關注

    0

    文章

    9

    瀏覽量

    2160

原文標題:Blaze:低延遲SSD上的快速圖處理

文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    PCIe延遲對系統性能的影響

    隨著技術的發展,計算機系統對性能的要求越來越高。PCIe作為連接處理器、內存、存儲和其他外圍設備的關鍵接口,其性能直接影響到整個系統的表現。PCIe延遲,作為衡量數據傳輸效率的重要指標,對系統性
    的頭像 發表于 11-26 15:14 ?193次閱讀

    什么是SSD硬盤 SSD硬盤的優勢和劣勢

    快速讀寫速度、低功耗、抗震動等優點。 SSD硬盤的優勢 快速讀寫速度 :SSD硬盤的讀寫速度遠高于傳統HDD,這得益于其內部沒有機械部件,數據傳輸完全依賴于電子信號,因此可以實現幾乎即
    的頭像 發表于 11-23 09:34 ?158次閱讀

    邊緣計算對網絡延遲的影響

    延遲。而邊緣計算則將計算能力“邊緣化”,即將數據處理和分析的任務從云端遷移到網絡的邊緣,即用戶設備或靠近用戶的邊緣服務器。這樣,數據就可以在用戶端或附近的服務器上得到及時處理,從而
    的頭像 發表于 10-24 14:25 ?331次閱讀

    交互式延遲音頻解碼器

    普通音頻解碼器在處理音頻時可能會引入較高的延遲,通常適合于音樂播放或錄音等場景。而交互式延遲音頻解碼器則專為實時應用設計,延遲通常在10毫
    的頭像 發表于 09-28 11:15 ?203次閱讀
    交互式<b class='flag-5'>低</b><b class='flag-5'>延遲</b>音頻解碼器

    數字控制環路中測量單元的延遲信號鏈

    電子發燒友網站提供《數字控制環路中測量單元的延遲信號鏈.pdf》資料免費下載
    發表于 09-07 09:13 ?0次下載
    數字控制環路中測量單元的<b class='flag-5'>低</b><b class='flag-5'>延遲</b>信號鏈

    TLV3801有著非常延遲,輸入信號的電壓受限,如何處理這種情況?

    (LVDS,CMOS)。 看到TLV3801等芯片有著非常延遲,但是輸入信號的電壓受限。針對這種情況在比較器前端應該如何調理
    發表于 08-02 06:24

    AI邊緣計算盒子優勢有哪些?如何實現延遲處理

    AI邊緣計算盒子作為一種集成人工智能技術的邊緣計算設備,其優勢主要體現在以下幾個方面,萬物縱橫為您詳細介紹: 邊緣計算盒子 1. 延遲處理:AI邊緣計算盒子靠近數據產生源頭,能夠即時處理
    的頭像 發表于 05-09 16:07 ?584次閱讀
    AI邊緣計算盒子優勢有哪些?如何實現<b class='flag-5'>低</b><b class='flag-5'>延遲</b><b class='flag-5'>處理</b>?

    晶體晶振在SSD的應用

    晶體晶振在SSD的應用SSD(SolidStateDisk)俗稱固態硬盤,是一種用于存儲數據的非易失性存儲設備,與傳統的機械硬盤(HDD)相比,具有更高的速度、更低的能耗和更好的可靠性。因此
    的頭像 發表于 04-30 16:03 ?492次閱讀
    晶體晶振在<b class='flag-5'>SSD</b><b class='flag-5'>上</b>的應用

    靜態電流、可編程延遲監控電路TPS3808數據表

    電子發燒友網站提供《靜態電流、可編程延遲監控電路TPS3808數據表.pdf》資料免費下載
    發表于 04-07 10:25 ?0次下載
    <b class='flag-5'>低</b>靜態電流、可編程<b class='flag-5'>延遲</b>監控電路TPS3808數據表

    靜態電流、可編程延遲監控電路TPS3808E數據表

    電子發燒友網站提供《靜態電流、可編程延遲監控電路TPS3808E數據表.pdf》資料免費下載
    發表于 04-01 10:36 ?0次下載
    <b class='flag-5'>低</b>靜態電流、可編程<b class='flag-5'>延遲</b>監控電路TPS3808E數據表

    靜態電流、可編程延遲監控電路TPS3808-EP數據表

    電子發燒友網站提供《靜態電流、可編程延遲監控電路TPS3808-EP數據表.pdf》資料免費下載
    發表于 03-14 10:07 ?0次下載
    <b class='flag-5'>低</b>靜態電流、可編程<b class='flag-5'>延遲</b>監控電路TPS3808-EP數據表

    靜態電流、可編程延遲監控電路TPS3808E數據表

    電子發燒友網站提供《靜態電流、可編程延遲監控電路TPS3808E數據表.pdf》資料免費下載
    發表于 03-14 10:06 ?0次下載
    <b class='flag-5'>低</b>靜態電流、可編程<b class='flag-5'>延遲</b>監控電路TPS3808E數據表

    Splashtop如何提供快速連接和延遲

    為了使遠程訪問按預期運行,用戶需要盡可能減少延遲,這既是為了提高用戶體驗,也是為了增強一般性能。延遲令人沮喪,影響工作。在進行VoIP 或視頻通話時,音頻不同步會導致溝通不暢,令人感到沮喪。
    發表于 01-04 10:53 ?382次閱讀
    Splashtop如何提供<b class='flag-5'>快速</b>連接和<b class='flag-5'>低</b><b class='flag-5'>延遲</b>

    如何衡量工業交換機的延遲

    網絡延遲是指在工業網絡交換機中,數據在傳輸和處理過程中產生的額外時間延遲。網絡延遲是由許多不同因素造成的,這些因素包括數據包在交換機緩沖區等待處理
    的頭像 發表于 12-13 16:08 ?407次閱讀

    SSD和HDD的具體對比

    SSD廠商早就預測NAND閃存的價格會隨著時間的推移而下降,讓SSD能夠在單價與HDD競爭。事實,NAND閃存的價格一直在下降。
    發表于 12-01 15:06 ?1433次閱讀
    <b class='flag-5'>SSD</b>和HDD的具體對比