Khái niệm cốt lõi
StreamCpi 是一個新的框架,它通過對區塊分配進行行程壓縮,減少了串流圖論劃分器的記憶體開銷,從而可以在邊緣設備上對兆邊圖進行高效、高品質的劃分。
摘要
這篇研究論文介紹了 StreamCpi,這是一個用於在邊緣設備上對兆邊圖進行劃分的創新框架。圖論劃分對於高效處理大型圖資料至關重要,它將圖形分割成更小的子圖,同時最大程度地減少子圖之間的連接。傳統的記憶體內劃分器雖然準確,但對於龐大的圖形來說,由於其巨大的記憶體開銷,通常不可行。StreamCpi 通過行程壓縮區塊分配,進一步減少了串流劃分器的記憶體開銷,從而可以在資源受限的邊緣設備上實現高效的圖形劃分。
主要內容
大型圖形的處理,特別是在生物資訊學、高效能運算和導航等領域,需要專門的技術來處理其巨大的規模。
圖論劃分旨在將圖形分割成大小大致相等的子圖,同時最小化子圖之間的邊緣數量,這對於優化平行計算和增強資料局部性至關重要。
傳統的記憶體內劃分器(如 METIS 和 KaHIP)會產生高品質的劃分,但它們需要大量的記憶體,這使得它們不適合處理極大型的圖形。
串流劃分器通過依次載入節點並動態地將其分配給區塊來解決記憶體限制,從而減少了記憶體的使用。
本文提出的 StreamCpi 框架通過對區塊分配採用行程壓縮,進一步提高了串流劃分器的記憶體效率。
StreamCpi 的一個關鍵優勢是它能夠在邊緣設備上對具有數十億個節點和數萬億條邊的圖形進行劃分。
作者還提出了一個對 la_vector 位向量進行的修改,增加了附加支援,這可以應用於其他串流應用程式中的線上行程壓縮。
實證結果表明,StreamCpi 在保持或提高劃分品質的同時,顯著減少了記憶體使用量。
例如,通過使用 StreamCpi,Fennel 劃分器可以在 Raspberry Pi 上有效地劃分一個具有 170 億個節點和 1.03 萬億條邊的圖形,其解決方案品質明顯優於其他任何在邊緣設備上可行的演算法。
結論
StreamCpi 是一個用於記憶體高效圖論劃分的強大框架,它通過對區塊分配進行行程壓縮,可以在邊緣設備上對兆邊圖進行高品質的劃分。這種能力為在資源受限的設備上進行大規模圖處理開闢了新的可能性,使其成為各種實際應用中不可或缺的工具。
Thống kê
StreamCpi 在 Raspberry Pi 上成功地劃分了一個包含 170 億個節點和 1.03 萬億條邊的生成圖。
StreamCpi𝛽=10𝑘,𝜅=1 的速度比 StreamCpi𝛽=𝑛,𝜅=1 快 2.9 倍。
StreamCpi𝛽=10𝑘,𝜅=1 消耗的記憶體比 StreamCpi𝛽=𝑛,𝜅=1 多 1.3 倍。
StreamCpi𝛽=100𝑘,𝜅=1 的速度比 StreamCpi𝛽=𝑛,𝜅=1 快 1.15 倍。
StreamCpi𝛽=100𝑘,𝜅=1 消耗的記憶體比 StreamCpi𝛽=𝑛,𝜅=1 多 1.1 倍。