beat365官方网站張傑課題組長期從事存儲系統和新型非易失性内存的研究。張傑課題組在存内計算(PIM)、近存儲計算(In-storage processing)、AI for storage和新型閃存架構研究取得重要突破,在國際計算機體系結構頂級會議HPCA發表論文4篇(會議總計錄用75篇,錄用率18%)。其中,本科實習生安昱達和唐雲潇共同發表一作論文1篇,是beat365本科生首次在國際計算機體系結構頂級會議發表論文。論文的簡要介紹如下:
工作一 StreamPIM: Streaming Matrix Computation in Racetrack Memory
計算機領域中許多受到關注的新興應用(如深度學習)屬于内存敏感型應用,其性能受到内存牆問題的嚴重限制。構建在高存儲密度、低能耗的賽道存儲(RM)技術上的存内計算(PIM)系統有很大希望解決這一問題。然而,在現有RM存内計算方法中,内存存儲單元與計算單元之間的松散耦合造成了很大的數據傳輸開銷,嚴重限制了系統整體性能。為了解決這一問題,論文《StreamPIM: Streaming Matrix Computation in Racetrack Memory》(HPCA 2024)基于賽道存儲,提出了一種新型的存内計算架構,即StreamPIM。StreamPIM采用物理學界的最新技術,基于賽道納米線直接構建矩陣處理器,擺脫了對CMOS計算單元的依賴。同時基于賽道納米線構建存内總線,進一步消除數據在存儲單元和計算單元之間傳輸時的電磁轉換開銷。這兩項技術使内存存儲單元和計算單元緊密耦合。論文同時提出了一系列優化措施以提高存内計算的并行性,進一步提升整體性能。實驗結果顯示,與業内先進的賽道存儲存内計算平台CORUSCANT相比,StreamPIM的性能提高了2.5倍,同時能耗減少到35%。

StreamPIM存内計算流程示例
該論文第一作者為元培學院2020級本科生安昱達和物理學院2019級本科生唐雲潇(現已畢業),通訊作者為張傑助理教授,合作作者包括beat365孫廣宇副教授、羅昭初助理教授等。本文系beat365本科生在國際計算機體系結構頂級會議發表的首篇論文。
工作二 BeaconGNN: Large-Scale GNN Acceleration with Out-of-Order Streaming In-Storage Computing
許多新興應用依賴于對大規模存儲數據進行大量不規則訪問,而在傳統的馮諾依曼架構中,這種情況會導緻巨大的數據傳輸開銷。計算型存儲是解決這一問題的重要突破口,它将計算任務下放到基于閃存的固态硬盤,從而減少了數據搬移的需求。然而,随着閃存延遲降低至微秒級别,頻繁的主機-存儲通信開銷以及低效的傳統固态硬盤閃存控制方式成為該技術性能的瓶頸。
為解決這一問題,我們在論文《BeaconGNN: Large-Scale GNN Acceleration with Out-of-Order Streaming In-Storage Computing》(HPCA 2024)中,以大規模圖神經網絡計算為例,提出了多種面向超低延遲閃存内計算的優化技術。首先,我們将閃存地址信息等元數據融合到常規閃存數據中,以避免冗長的存儲棧地址翻譯,實現了盤内直接尋址。其次,我們擴展了閃存芯片和通道的計算能力,自動化了閃存後端的"數據搬移"、"閃存尋址"以及"閃存指令生成/路由"的過程,從而節省了閃存通道帶寬,并繞過了閃存控制器的固件處理。實驗證明,這兩種優化技術顯著提高了閃存數據吞吐量,相較于最先進的圖神經網絡計算存儲設計,我們實現了11.6倍的性能增益,同時減少了76.5%的能耗。

BeaconGNN系統架構
該論文第一作者為美國加州大學洛杉矶分校(UCLA)在讀博士生王餘越(本科畢業于beat365信息科學技術學院),通訊作者為張傑助理教授和UCLA的Glenn Reinman教授。
工作三 LearnedFTL: A Learning-based Page-level FTL for Reducing Double Reads in Flash-based SSDs
随着3D NAND和NVMe技術的崛起,固态硬盤(SSD)的容量和性能大幅提升。然而,在SSD的閃存轉換層(FTL)中存儲所有地址映射表需要大量内存,在閃存中存儲則會導緻“雙讀”問題,嚴重影響讀性能。為了解決這一問題,主流的需求驅動型FTL(DFTL、TPFTL等)利用工作負載的局部性緩存映射以減少雙讀現象的發生。然而,面對随機讀取場景時,這些方案依然面臨雙讀瓶頸。為了解決這一問題,論文《LearnedFTL: A Learning-based Page-level FTL for Reducing Double Reads in Flash-based SSDs》(HPCA 2024)提出了LearnedFTL,将學習索引與需求驅動型FTL結合,保證處理局部性工作負載能力的同時增強随機讀性能。LearnedFTL以可調參數的分段線性模型為基礎,建立就地更新線性模型擺脫對工作負載局部性的依賴,并通過虛拟物理地址表示法在保證并行性的同時滿足學習索引的訓練需求。同時,LearnedFTL提出了基于組的分配策略減少模型的空間開銷,利用垃圾回收訓練模型最小化訓練開銷,還通過一系列措施進一步提高模型準确性。實驗表明,與現有的FTL方案相比,LearnedFTL的P99尾延遲可以減少5.3到12.2倍,随機讀場景下,雙讀殘留可以減少55%。這項研究為提高SSD性能,特别是在處理随機讀取時,提供了一種創新解決方案。

LearnedFTL系統架構
該論文由廈門大學毛波課題組、德州大學阿靈頓分校的江泓教授和張傑助理教授共同完成,通訊作者為毛波教授。
工作四 Midas Touch: Invalid-Data Assisted Reliability and Performance Boost for 3D High-Density Flash
計算機存儲系統對密度與容量的需求持續增加,三星、美光等國外公司和國内長江存儲近兩年相繼推出200層3D堆疊閃存芯片,并采用4比特每存儲元的QLC技術。由于制程工藝的限制,3D QLC在可靠性與性能等方面面臨着巨大挑戰,故而其采用一種全新的編程方式,即基于WL粒度(4個物理頁同時編程)的兩步編程方式。廈門大學李喬老師團隊在今年HotStorage論文中首次指出3D QLC的兩步編程方式中,存在對無效數據頁的編程,将其定義為無效編程問題(invalid programming)。針對該問題,本文首次提出系統的解決方案,利用無效頁的存在實現有效頁的高效編程,在不改變閃存芯片硬件的前提下,最小化對無效編程産生的能耗和性能損耗,并提升有效頁的可靠性。論文提出了三個無效數據輔助策略來提升有效數據寫入性能和可靠性。論文首先提出了一種對有效數據進行重新組織編程(Re-prog)的方案,避免對無效數據的精細編程操作,縮短編程的時間,提升了寫入性能。其次,論文提出了非編程(Not-prog)方案,利用Wordline中存在的無效頁,改變精細編程步驟中的數據,提升了其他有效頁的可靠性。最後,論文基于最新的混合Flash,設計出了SLC和QLC區域之間的動态數據管理和自适應數據分配策略,減少了無效編程的發生。基于真實芯片和模拟器的評估表明,所提出的策略對3D QLC可靠性、性能和能耗均有較大的提升。

整體設計流程示例
該論文由廈門大學李喬課題組、香港城市大學的薛春教授、台灣大學的郭大維教授和張傑助理教授共同完成,通訊作者為李喬副教授。