• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于動態(tài)權衡的新型非易失存儲器件體系結(jié)構研究綜述

      2019-04-18 05:25:58張明喆劉志勇
      計算機研究與發(fā)展 2019年4期
      關鍵詞:存儲單元權衡體系結(jié)構

      張明喆 張 法 劉志勇

      1(中國科學院大學 北京 100049)2 (計算機體系結(jié)構國家重點實驗室(中國科學院計算技術研究所) 北京 100190)

      數(shù)據(jù)、人工智能等新型應用的興起在集成度、訪問速度等方面對存儲器件提出了更高的要求.而隨著半導體制造工藝的提升和器件尺寸的不斷縮小,動態(tài)隨機存儲器(dynamic random access memory, DRAM)在制造成本、良品率和利潤率方面面臨著越來越大的挑戰(zhàn).此外,由于DRAM需要定期進行刷新操作,由此造成功耗提升和性能下降.在此背景下,新型非易失存儲器(non-volatile memory, NVM)作為DRAM的可行替代技術受到了學術界和工業(yè)界越來越多的重視.與傳統(tǒng)的DRAM相比,NVM器件具有集成度高、可擴展性高、靜態(tài)功耗低、非易失等優(yōu)點.

      近年來,對NVM的研究主要集中于相變存儲器(phase change memory, PCM)[1-2]、電阻式存儲器(resistive RAM,ReRAM)[3]、自旋轉(zhuǎn)移力矩存儲器(spin-transfer toque RAM, STT-RAM)[4]等幾種存儲材料,并根據(jù)其不同的讀/寫操作速度替換現(xiàn)有層次化存儲系統(tǒng)中相應的器件.其中PCM存儲器利用硫系玻璃晶體在不同狀態(tài)下表現(xiàn)出的不同電阻值保存信息,并通過脈沖電流實現(xiàn)可控的狀態(tài)變化.電阻式存儲器也稱為憶阻器,通過在一個含有氧化物夾層結(jié)構的強相關電子材料兩端施加不同大小和方向的電壓改變其電阻值,并使用不同電阻值表示不同的邏輯值.STT-RAM則使用磁隧道結(jié)(magnetic tunnel junction, MTJ)保存數(shù)據(jù),通過控制其自由層和參考層的相對磁力方向改變MTJ的電阻值,進而表示不同的邏輯值.3種非易失存儲介質(zhì)與傳統(tǒng)易失存儲介質(zhì)的性能參數(shù)比較如表1所示:

      Table 1 Comparison Across Different Storage Devices[5-6]表1 存儲介質(zhì)參數(shù)對比[5-6]

      從表1可以看出,與傳統(tǒng)易失存儲器相比,NVM存儲器可以提供接近或更優(yōu)的讀訪問性能,但在寫訪問延遲和寫壽命方面存在較大差距.

      目前,NVM器件正處在實用化的初始階段,眾多廠商紛紛推出了自己的解決方案:Intel和Micron公司在2016年底推出基于PCM的3D Xpoint Memory存儲器[7],而HP和SanDisk則聯(lián)合推出了基于ReRAM的SCM(storage class memory)存儲器[8].但是,由于在壽命和寫延遲方面仍存在很多問題,這些解決方案距離技術成熟尚有很大距離(例如與現(xiàn)有的SSD存儲器相比,第1代3D Xpoint Memory的壽命僅提升了3倍[9]).

      針對目前制約NVM大規(guī)模應用的問題,傳統(tǒng)體系結(jié)構方法的思路是將NVM器件視為一個黑盒,通過在黑盒外圍增加緩沖存儲器和輔助控制電路,從而達到降低NVM存儲器寫延遲對系統(tǒng)性能的影響或延緩NVM存儲器老化的目的(如圖1(a)所示):

      Fig. 1 Comparison of NVM optimization methods based on classical computer architecture method and dynamic trade-off圖1 基于傳統(tǒng)方法和動態(tài)權衡特性的NVM優(yōu)化比較

      基于這一思路,研究人員提出了多種不同的解決方案:

      1) 對于寫延遲過大問題,一種主要的解決方案是通過提高寫訪問的并行度隱藏寫延遲[10-12].除此以外,另一種常見思路是通過在NVM存儲器的前端設置一個較大的緩存(如DRAM cache),將寫請求存儲在緩存后異步完成對NVM存儲器的寫訪問[1-2].Qureshi等人[13]提出了一種新的思路,即當處在關鍵路徑上的讀請求到達且與正在執(zhí)行的寫操作沖突時,可以將正在執(zhí)行的寫操作暫?;蚪K止,在讀請求完成后繼續(xù)或重新執(zhí)行寫操作,這種方法可以降低寫延遲對于系統(tǒng)整體性能的影響.此外,Qureshi等人[13]通過對PCM存儲器的SET和RESET操作的延遲分別進行分析,發(fā)現(xiàn)RESET操作延遲遠小于SET操作,并基于這一發(fā)現(xiàn)提出了一種技術通過提前進行SET操作提升PCM存儲器的寫訪問性能.

      2) 對于NVM寫操作壽命有限的問題,解決方案主要可以分為限制寫操作和寫分攤2種.其中限制寫操作是指通過某種機制減少對NVM存儲器的寫操作從而延長設備的壽命,例如使用DRAM作為NVM存儲器的緩沖[12].此外,F(xiàn)lip-N-Write技術利用被寫入數(shù)據(jù)的特性減少寫入數(shù)據(jù)時對NVM存儲單元的擦寫次數(shù)[10],以及Saadeldeen等人[14]提出在基于ReRAM的分支預測器中使用SRAM作為緩存的方案也都可以被歸為這一類.寫分攤技術是指通過將寫操作分攤至全體NVM存儲單元,減少由于寫操作熱點造成的部分存儲單元過快老化,進而延長存儲器整體壽命.其中,Start-Gap技術通過將寫操作目標進行偏移,僅增加8 B的額外存儲開銷,可使存儲器壽命達到理論壽命的95%[15].與此類似的解決方案還包括將cache line在內(nèi)存頁間進行偏移[2]、將bit在cache line內(nèi)部進行偏移以及將cache line在段內(nèi)進行偏移[16].

      基于傳統(tǒng)體系結(jié)構的方法雖然可以在一定程度上解決NVM存儲器存在的問題,但同時也會帶來一系列問題:

      1) 需要增加一個或多個控制 電路對寫訪存請求進行分析、重定向等預處理操作,由于這些操作處于寫訪存請求執(zhí)行的關鍵路徑上,因此新增加的控制電路容易成為新的性能瓶頸.例如,在基于細粒度偏移[2,16]的寫分攤技術中,由于需要為每一個寫訪存請求選擇實際寫入地址,因此在會造成寫訪存性能的降低.

      2) 在對NVM存儲器的性能或壽命進行優(yōu)化的同時,往往會以犧牲其他指標作為代價.例如在通過減少寫操作提升存儲器壽命的方案中,為寫訪存請求選擇新的目標地址將延長寫訪存操作的延遲[10];而在寫暫停方法中,被中斷的寫操作在讀訪存請求完成后重新執(zhí)行,這客觀上增加了寫操作的數(shù)量,使得存儲器老化加快.

      3) 造成控制邏輯更加復雜,不利于系統(tǒng)穩(wěn)定.例如,在使用DRAM緩沖的性能或壽命優(yōu)化方案中,需要特別的控制邏輯電路DRAM與NVM存儲器的數(shù)據(jù)同步等操作.

      由于實際系統(tǒng)對于存儲器的性能和壽命同時具有較高的要求,因此上述基于傳統(tǒng)體系結(jié)構方法的優(yōu)化方案無法滿足實際系統(tǒng)的需求.

      近年來,隨著對NVM存儲材料的深入研究,人們發(fā)現(xiàn)在NVM存儲材料中存在一些相互影響的參數(shù),在其工作狀態(tài)下,可以通過改變一個參數(shù),使其他相關參數(shù)向著相反方向變化,這種特性被稱為“動態(tài)權衡特性”[17-19].動態(tài)權衡特性為計算機體系結(jié)構研究提供了新的機遇,研究人員陸續(xù)提出了一系列基于NVM動態(tài)權衡特性的計算機體系結(jié)構優(yōu)化方案[19-26].在此類設計方案中,NVM存儲器不再被視為黑盒,而是基于其動態(tài)權衡特性,同時結(jié)合目標應用的特性,圍繞這二者進行體系結(jié)構設計(如圖1(b)所示).與傳統(tǒng)的方案相比,基于動態(tài)權衡的解決方案在3個方面具有明顯區(qū)別:

      1) 在傳統(tǒng)NVM研究中,器件特性在器件設計完成后就已確定,而動態(tài)權衡特性為體系結(jié)構設計者和系統(tǒng)級用戶提供了影響器件特性的機會;

      2) 在基于NVM動態(tài)權衡特性的體系結(jié)構研究中,研究者不僅需要考慮器件特性,還要綜合考慮目標應用的特性,并為器件特性與目標應用特性尋找結(jié)合點;

      3) 基于NVM動態(tài)權衡特性的體系結(jié)構設計中需要添加簡單控制電路,以實現(xiàn)根據(jù)應用特性的變化動態(tài)調(diào)節(jié)NVM存儲器的器件特性.

      通過對動態(tài)權衡特性加以利用,基于NVM動態(tài)權衡特性的體系結(jié)構設計在很多方面具有明顯的優(yōu)勢:1)與傳統(tǒng)優(yōu)化方案相比,此類方案僅需要少量或不需要額外存儲開銷;2)此類方法所需的輔助邏輯簡單,由解決方案引入的額外延遲低;3)此類方法可在低硬件開銷的前提下實現(xiàn)同時對多個目標進行協(xié)同優(yōu)化;4)對系統(tǒng)整體性能影響小,避免了傳統(tǒng)解決方案中由于對NVM某一方面進行優(yōu)化而造成系統(tǒng)整體性能下降[20].

      本文對NVM存儲材料中存在的動態(tài)權衡特性進行了分析,包括存儲密度與寫延遲的關系、寫延遲與寫壽命的關系、寫延遲與狀態(tài)保持時間的關系.在此分析的基礎上,本文對近年來基于這些動態(tài)權衡特性的NVM應用優(yōu)化研究進行梳理.最后,本文還將對此類研究未來的發(fā)展做出展望.

      1 NVM材料動態(tài)權衡特性

      1.1 存儲密度與訪問延遲的關系

      對于使用電阻值表示邏輯值的NVM材料(如ReRAM,PCM),可通過對其不同電阻值進行重新編碼,實現(xiàn)在單一存儲單元中存儲多個邏輯狀態(tài).該技術被稱為多層(multi-level cell, MLC)NVM,可用于提高存儲密度或存儲可靠性.對于MLC NVM而言,由于需要精確控制寫入后存儲單元的電阻值,因此MLC NVM的寫操作通常采用基于多次迭代的模型[27].

      在每個迭代中,需要將當前存儲單元的電阻值讀取并校驗后再進行一次寫操作,直至存儲單元最終達到目標電阻值.因此,對于一個MLC NVM而言,寫操作中迭代的次數(shù)隨著NVM存儲單元層數(shù)的增加而線性增長[27].文獻[18]提出,MLC NVM存儲單元的讀延遲隨該存儲單元中存儲層數(shù)的增加而呈指數(shù)增長.綜上所述,MLC NVM寫延遲與存儲層數(shù)的關系可近似表示為

      其中,ReadLat(n)表示當存儲層數(shù)為n層時的讀延遲,WritePulseLat表示每個迭代中寫脈沖電流的持續(xù)時間.

      1.2 寫延遲與寫壽命的關系

      材料領域的相關研究工作表明,在多種NVM材料中,寫延遲都與器件壽命存在相關關系[28-29].為了縮短寫操作的延遲,往往需要在執(zhí)行寫操作時使用更多的能量[30-31],而過高的能量將加速器件的老化[29,32-33],進而導致器件壽命的降低.文獻[17]以基于ReRAM的主存儲器為應用場景,使用一個分析模型來定量描述NVM中寫延遲與器件壽命的關系.根據(jù)該模型,NVM的壽命與寫延遲之間的關系為

      其中,tWP為寫延遲,t0為器件相關常量,Expo_Factor為一個取值范圍在1~3之間的器件結(jié)構相關常量.對于基于氧化金屬層的器件而言[34],Expo_Factor的取值為2.0左右.當Expo_Factor=2.0時,器件的寫壽命隨寫延遲增加而變化的情況如圖2所示:

      Fig. 2 The trade-off between write latency and write endurance of NVM device[20]圖2 NVM器件寫延遲與寫壽命之間的關系[20]

      1.3 寫延遲與狀態(tài)保持時間的關系

      在MLC PCM存儲器中,由于制造工藝中存在的誤差[35]、材料自身成分的波動[36]以及自身結(jié)構的細微變化[37],在擦寫時電流、電壓和持續(xù)時間相同,PCM存儲器中不同單元阻值的變化情況也并不嚴格一致.因此,為了確保擦寫的準確性,MLC PCM的寫操作通常采用一種基于多次迭代的策略,每次迭代中包含一組“擦寫-驗證”操作.在每次寫操作開始前,通常會使用一個RESET操作使得存儲單元恢復到初始狀態(tài),隨后采用多次“擦寫-驗證”操作直至存儲單元的電阻值達到目標值.

      材料學研究發(fā)現(xiàn),由于PCM晶體材料結(jié)構存在松弛性[38],其電阻值會自然增長,這種現(xiàn)象被稱作“阻值漂移”[38].由于MLC PCM存儲器使用不同的阻值域表示不同的邏輯值,因此當電阻值“離開”某一特定的阻值域時,其所代表的邏輯值可能會發(fā)生變化,這將使得MLC PCM不再具有非易失性.因此,為了克服阻值漂移對MLC PCM存儲可靠性的影響,在定義阻值域時,通常在相鄰的阻值域之間保留一個未定義的阻值區(qū)間用于隔離,這個阻值區(qū)間通常被稱為“保護帶”[39].圖3描述了一個2 b MLC PCM存儲單元,其整個阻值范圍被分為4個阻值域(即“00”,“01”,“11”,“10”,采用格雷碼規(guī)則排列).相關研究結(jié)果表明,阻值漂移的速度正比于存儲單元中非晶相的體積分數(shù).因此,對于一個MLC PCM存儲單元,更寬的保護帶將有助于容忍更多的阻值漂移,從而獲得更長的數(shù)據(jù)保持時間.但是,保護帶變寬將使得每個有效阻值域變窄,這對于寫操作的準確性提出了更高的要求.為了保證寫操作的準確性,寫操作中每次迭代的阻值變化粒度將變小,整個寫操作所需的迭代次數(shù)將增加,這將使得寫操作需要消耗更多的能量(如圖3(a)所示),但是由于其數(shù)據(jù)保持時間更長,因此很少需要刷新操作,器件的壽命更長.與之相反,當保護帶變窄時,各個有效阻值域變寬,這使得寫操作中可以使用粗粒度的迭代,減少寫操作中迭代的數(shù)量,降低寫操作所消耗的能量(如圖3(b)所示),但由此會導致存儲單元的數(shù)據(jù)保持時間更短.為了保證存儲的正確性,存儲器需要在存儲單元狀態(tài)失效之前進行刷新操作,這樣會導致對存儲器的寫操作次數(shù)增加,器件壽命縮短.

      Fig. 3 The problem of resistance drift in MLC PCM[21]圖3 PCM存儲器“阻值漂移”現(xiàn)象示意圖[21]

      對于MLC PCM存儲器而言,一個寫操作包含一個RESET和多個SET操作.當保護帶變寬時,有效阻值域變窄,此時SET操作的電流降低,需要的SET操作數(shù)量增長,存儲單元的狀態(tài)保持時間將相應地延長;相反,當保護帶變窄時,有效阻值域變寬,此時SET操作的電流升高,需要的SET操作減少,存儲單元的狀態(tài)保持時間相應地縮短.為了定量描述這一動態(tài)權衡關系,文獻[19]綜合了多種不同角度的相關模型[38-41],提出了一種新的模型用于計算MLC PCM寫延遲與狀態(tài)保持時間的關系;在此基礎上,文獻[21]使用最新的基于20 nm工藝制程的參數(shù)[42],重新計算了相關數(shù)據(jù),結(jié)果如表2所示.從表2可以看出,當寫操作中SET操作的數(shù)量增多時,存儲器可以采用更小的寫電流完成寫操作,存儲單元的狀態(tài)保持時間顯著延長,但同時寫操作的延遲增大,寫訪問性能降低;相反,若減少寫操作中SET操作的數(shù)量,則寫操作中需要使用更大的寫電流,這樣雖然可以縮短寫操作延遲,但是存儲單元的狀態(tài)保持時間也會大幅縮短.

      Table 2 Write Latency and Retention of Write Operations with Different Number of SET Iterations[21]表2 包含不同數(shù)量SET的寫操作中寫延遲與狀態(tài)保持時間的權衡關系[21]

      在本節(jié)中,我們對NVM存儲器中常見的動態(tài)權衡特性進行了介紹,這些特性為基于動態(tài)權衡特性的非易失存儲器體系結(jié)構研究提供了物理基礎.接下來,本文將對基于不同NVM動態(tài)權衡特性的體系結(jié)構優(yōu)化研究進行分類梳理.

      2 基于存儲密度與寫延遲關系的優(yōu)化方法

      由1.1節(jié)介紹可知,在ReRAM和PCM中,存儲密度和讀寫延遲存在相關關系.在本節(jié)中,我們介紹了通過適當犧牲存儲密度換取系統(tǒng)性能的優(yōu)化方法.此外,在部分特定應用中,存儲空間不足會帶來明顯的性能損失,因此在這些應用中可以通過適當延長寫訪問延遲而動態(tài)提升存儲密度.這樣雖然增大了寫訪存操作的延遲,但存儲容量的提升依然可以使系統(tǒng)整體性能得到提升.

      2.1 彈性存儲

      由于MLC NVM器件的讀寫延遲與存儲密度存在相關性,因此在使用MLC NVM器件構建主存時需要在發(fā)揮其高存儲密度優(yōu)勢的同時將各種負面影響降至最低.文獻[25]分析了常見應用在運行時對內(nèi)存的需求情況,發(fā)現(xiàn)不同應用在不同狀態(tài)下對運行內(nèi)存容量的需求存在很大波動,因此固定的內(nèi)存容量難以滿足不同應用的需求.基于這一分析結(jié)果,文獻[25]提出了一種基于MLC PCM的可伸縮的彈性存儲技術MMS.MMS將主存儲器分為2個區(qū)域:運行于多層模式的“高存儲密度-高訪問延遲區(qū)域”和運行于單層模式的“低存儲密度-低訪問延遲區(qū)域”.MMS通過Memory Monitor對當前負載對內(nèi)存的需求情況進行動態(tài)監(jiān)測.當應用對于主存儲器的需求增大時,運行于單層模式的存儲區(qū)域比例會下降,一部分區(qū)域會變?yōu)槎鄬幽J揭詽M足應用對內(nèi)存容量的需求;當應用對主存儲器容量的需求下降時,一部分多層模式的區(qū)域會切換為單層模式,通過犧牲存儲容量換取系統(tǒng)整體性能的提升.實驗結(jié)果表明,對于一個8 GB的MLC PCM主存儲器而言,MMS可使用單層模式滿足大部分訪問請求的需要(95%的讀請求和90%的寫回請求),通過這種單層/多層模式的動態(tài)切換,包含MMS的系統(tǒng)可實現(xiàn)平均40%的性能提升.

      類似地,文獻[26]提出了一種名為AdaMS的技術,在電路層級實現(xiàn)了PCM存儲單元在單層/多層模式之間的動態(tài)切換.基于這一技術,基于MLC PCM的固態(tài)硬盤可根據(jù)負載的需求情況在單層模式與多層模式之間進行切換,并配合專門的編制和運行時重映射技術,在負載較低時通過更多地采用單層模式提高固態(tài)硬盤的訪問性能.實驗結(jié)果表明:AdaMS可使得MLC PCM固態(tài)硬盤的吞吐率平均提升28%.

      2.2 動態(tài)可伸縮目錄表

      基于cache一致性的共享存儲對于多核/眾核處理器芯片的可編程性具有重要意義.現(xiàn)有的多核/眾核處理器普遍采用基于目錄表的一致性協(xié)議.但是,隨著處理器內(nèi)部核數(shù)的增加,目錄表所需的空間將呈超線性增加.因此,未來眾核處理器設計中的一個重要問題是如何設計一種具有良好伸縮性的目錄表結(jié)構.眾多研究人員從降低目錄表的能耗、延遲或復雜度等角度提出了多種不同的解決方案[43-46].但是,不同應用對于目錄表的需求差異很大:在一部分應用中,要求目錄表有較多的目錄項,但大部分目錄項中的共享信息較少;而另一部分應用中,則需要目錄項數(shù)量較少,但多數(shù)目錄項中的共享者數(shù)量較多.基于傳統(tǒng)SRAM存儲器很難設計出滿足不同應用需求的彈性目錄表[47-48].針對這一問題,文獻[49]提出了一種基于多層ReRAM的目錄表結(jié)構Sponge-Directory.SpongeDirectory通過將多個目錄表條目保存在一個物理存儲記錄中,提升了目錄表的存儲密度,從而降低了目錄表替換對于系統(tǒng)性能的影響.針對不同類型應用對于目錄表的不同需求,Sponge-Directory提供了2種不同的邏輯存儲格式,可根據(jù)應用的類型進行動態(tài)選擇.如圖4(a)所示,對于上述第1類應用,SpongeDirectory使用名為share pointer的存儲格式,對應于同一內(nèi)存區(qū)域的目錄項被保存在同一物理記錄中,其中地址信息被保存在該物理記錄的第0層,后續(xù)每條目錄項被依次保存在該屋里記錄的更高層;而對于上述第2類應用,則使用名為bit vector的存儲格式(如圖4(b)所示),物理記錄的第0層保存目錄項地址信息,物理記錄的高層保存共享者信息,其中每位對應于一個共享者.

      Fig. 4 The entry formats of SpongeDirectory[49]圖4 SpongeDirectory結(jié)構示意圖[49]

      在采用SpongeDirectory的系統(tǒng)中,盡管使用的多層ReRAM存儲器延長了目錄表的讀寫延遲,但由于其提升了存儲密度和目錄表使用效率,降低了由于目錄表替換造成的性能損失,因此系統(tǒng)性能和電路面積依然得到了明顯的優(yōu)化.實驗結(jié)果表明:與傳統(tǒng)目錄表相比,SpongeDirectory在性能近似的前提下,可將存儲單元數(shù)量縮減至1/18,同時將能耗縮減至1/8.

      2.3 基于彈性存儲的Hash Table算法優(yōu)化

      在很多算法和應用中,Hash Table都是一種重要的數(shù)據(jù)結(jié)構.隨著應用和數(shù)據(jù)規(guī)模的增長,實現(xiàn)高效的Hash Table結(jié)構的重要性和難度也在日益提高.傳統(tǒng)的Hash Table通常基于鏈表實現(xiàn),Hash Table中各項的地址動態(tài)可變并在內(nèi)存中隨機分布.這種實現(xiàn)方式雖然可以提高內(nèi)存使用效率,但是卻影響了預取(prefetching)的效果并降低了指令級并行度.針對這一問題,文獻[24]提出了一種基于MLC PCM的可擴容Hash Table技術Herniated Hash Table.該技術可根據(jù)應用的需要,通過動態(tài)增加PCM單元同一電阻域中存儲的位數(shù)實現(xiàn)將多個相鄰的Hash Table記錄保存在同一個物理地址的不同層中,以便于讀取連續(xù)的Hash Table記錄.當該物理地址的存儲層數(shù)達到上限時,鏈表會指向其他物理地址并繼續(xù)使用不同層存儲連續(xù)的Hash Table記錄.Herniated Hash Table雖然會使Hash Table記錄的讀寫延遲增大,但是通過配合專門設計的編址和預取機制,該技術依然可以通過提高訪問并行度達到提升性能的目的.實驗結(jié)果表明:與基于單層PCM主存儲器的鏈表式Hash Table結(jié)構相比,Herniated Hash Table在使用4層PCM的情況下可實現(xiàn)4.8倍的存儲密度提升以及67%的性能提升.

      2.4 小 結(jié)

      表3列舉了本節(jié)所介紹的基于“存儲密度-訪問延遲動態(tài)權衡特性”的相關優(yōu)化工作,并將其與基于傳統(tǒng)體系結(jié)構方法的相關工作進行了對比.從中我們可以看出,與傳統(tǒng)體系結(jié)構方法相比,基于動態(tài)權衡特性的性能優(yōu)化方法在硬件開銷、簡化控制邏輯等方面具有明顯的優(yōu)勢.

      Table 3 Qualitative Comparison of Optimization Using the Storage Density vs Access Latency Trade-off表3 基于“存儲密度-訪問延遲動態(tài)權衡特性”的相關優(yōu)化工作比較

      ① To our best of knowledge, all the existing Hash table optimization is based on software, and there is no similar work to compare.

      Fig. 5 Bank-Aware Mellow Write scheme[20]圖5 Bank-Aware Mellow Write寫策略[20]

      3 基于寫延遲與寫壽命關系的優(yōu)化方法

      由1.2節(jié)介紹可知,對于NVM材料而言,寫延遲和寫壽命存在相關性.基于這一動態(tài)權衡關系,文獻[20]提出了一種名為Mellow Write的技術,在盡量減少額外硬件開銷的前提下提升NVM存儲器的壽命.與原有基于寫分攤和減少寫操作的思路不同,Mellow Write主要通過延長寫操作延遲(“慢寫”)減少單次寫操作對NVM存儲單元的磨損程度,從而實現(xiàn)延長存儲器壽命的目標.

      為了減少寫延遲延長對系統(tǒng)性能的影響,Mellow Write包含了2種策略:Bank-Aware Mellow Write和Eager Mellow Write.如圖5所示,在Bank-Aware Mellow Write策略中,通過掃描寫訪存隊列中的寫請求,當一個bank只有一個寫請求時,該請求會采用慢寫的方式完成.為了進一步提升Mellow Write的性能,在Eager Mellow Write策略中(如圖6所示),通過對末級緩存(last level cache, LLC)進行掃描,挑選無用的“臟數(shù)據(jù)”并將其主動地采用慢寫的方式進行寫回.同時,在內(nèi)存控制器中增加了專門的Eager Mellow Queue用于主動生成的慢寫請求.

      為了進一步提升NVM存儲器的壽命,Mellow Write中還包含一種名為Wear Quota的技術:將程序運行的整個過程劃分為一些列固定時長的采樣區(qū)間,在每個采樣區(qū)間中計算區(qū)間內(nèi)寫操作對主存造成的累計磨損情況,當累計磨損超過一定閾值時,在下一個采樣區(qū)間內(nèi)將只采用慢寫模式完成所有寫請求.

      Fig. 6 A high level view of a processor and a memory controller using Eager Mellow Write[20]圖6 采用Eager Mellow Write策略的系統(tǒng)結(jié)構圖[20]

      Mellow Write中的一些參數(shù)取值與應用特征相互作用將會對系統(tǒng)性能造成很大影響.為了使系統(tǒng)始終運行于最優(yōu)狀態(tài),Mellow Write需要針對不同應用特征動態(tài)調(diào)節(jié)自身參數(shù).但是,由于參數(shù)的數(shù)量眾多,通過建模實現(xiàn)自身參數(shù)的求解變得十分困難.針對這一問題,文獻[51]提出了一種基于機器學習的參數(shù)動態(tài)選擇技術.該技術通過在程序運行時對處理器各項狀態(tài)參數(shù)及程序行為特征進行周期性采樣,在線訓練一個機器學習模型,同時使用該模型為下一個采樣周期選擇適當?shù)南到y(tǒng)配置參數(shù).實驗結(jié)果表明:該方法可以在最小化動態(tài)能耗的同時,使性能與理論最優(yōu)值的差距縮小到5%以內(nèi).

      表4將基于“訪問延遲-寫壽命動態(tài)權衡特性”的NVM存儲器優(yōu)化與基于傳統(tǒng)體系結(jié)構方法的NVM存儲器優(yōu)化進行了比較.從表4可以看出,由于Mellow Write不需要對寫訪存請求進行細粒度分析,因此需要的輔助邏輯和額外開銷都很?。煌瑫r,Mellow Write通過為寫訪存請求選擇適當寫模式的方式對器件壽命和系統(tǒng)性能進行平衡,避免了引入緩沖存儲器以及由此帶來的控制邏輯復雜化的問題.此外,Mellow Write避免了在優(yōu)化存儲器壽命的同時對系統(tǒng)性能造成影響,實現(xiàn)了多目標協(xié)同優(yōu)化.

      Table 4 Qualitative Comparison of Optimization Using the Access Latency vs Endurance Trade-off表4 基于“訪問延遲-寫壽命動態(tài)權衡特性”的相關優(yōu)化工作比較

      4 基于寫延遲與狀態(tài)保持時間關系的優(yōu)化方法

      由1.3節(jié)介紹可知,在MLC PCM中存在著寫延遲與狀態(tài)保持時間之間的動態(tài)權衡關系.同時,由于不同延遲的寫模式對于寫電流的需求不同,因此寫延遲不同也會導致寫功耗的變化.此外,對于基于MLC PCM的主存儲器而言,為了保證數(shù)據(jù)的正確性,在其狀態(tài)保持時間結(jié)束前需要進行刷新操作,由此引入的額外寫操作也會加速存儲單元的老化.因此,寫延遲與狀態(tài)保持時間之間動態(tài)權衡關系也可以很容易地擴展為包含寫延遲、寫功耗、狀態(tài)保持時間、器件壽命在內(nèi)的多方之間的動態(tài)權衡關系.這為體系結(jié)構設計提供了充足的空間.本節(jié)將對基于這一動態(tài)權衡關系的體系結(jié)構設計方法進行介紹.

      4.1 嵌入式系統(tǒng)主存儲器

      由于MLC PCM具有寫延遲大、靜態(tài)功耗低的特點,因此非常適合作為RAM和FLASH的替代品,應用于對寫性能要求不高但要求低功耗的嵌入式設備中.針對嵌入式系統(tǒng)的特點,研究人員提出了一系列基于存儲器動態(tài)權衡特性的優(yōu)化方案.

      文獻[19]針對嵌入式系統(tǒng)中應用程序的訪存特點,提出了一種名為CDDW的技術.該技術通過在編譯階段對代碼中的寫操作指令進行靜態(tài)掃描,估算出數(shù)據(jù)在最壞情況下的生命周期長度.基于這一估算結(jié)果,編譯器將為該數(shù)據(jù)選擇最適合的寫模式.通過該方法,CDDW可使基于MLC PCM的存儲器在性能和寫延遲之間達到更優(yōu)的平衡.實驗結(jié)果表明,CDDW可使得系統(tǒng)性能提升6.3%,同時將寫能耗降低32.4%.

      在CDDW的基礎上,文獻[22]通過分析發(fā)現(xiàn),對于嵌入式應用中大量存在的循環(huán)模塊,由于其中數(shù)據(jù)的生命周期非常長,因此對這些數(shù)據(jù)采用長延遲寫操作將對系統(tǒng)性能和能耗帶來很大影響.基于這一分析,文獻[22]提出了一種名為WMALT的循環(huán)感知技術.該技術通過在編譯階段對代碼的掃描,發(fā)現(xiàn)處于循環(huán)模塊中的數(shù)據(jù)項,并采用低延遲寫操作去改寫這些數(shù)據(jù)項.實驗結(jié)果表明:當WMALT與CDDW技術配合使用時,相比于單純使用CDDW的情況下可實現(xiàn)50.8%的性能提升,同時降低32.0%的動態(tài)能耗.

      Fig. 7 A high level overview of RRM and its relationship to the LLC and memory controller[21]圖7 RRM結(jié)構概述及其與LLC和內(nèi)存控制器的關系[21]

      文獻[23]針對嵌入式處理器中基于MLC PCM的SPM存儲器,提出了一種名為MMAS的算法.該算法使用整數(shù)線性規(guī)劃方法為寫操作指令和數(shù)據(jù)項尋找近似最優(yōu)的調(diào)度方案,從而達到縮短數(shù)據(jù)項生命周期并更多地使用低延遲寫操作的目的.MMAS可在多項式時間內(nèi)為大型程序?qū)ふ业浇谱顑?yōu)的調(diào)度結(jié)果.實驗結(jié)果表明,MMAS算法可使訪存時間平均縮短38.79%.

      4.2 通用計算系統(tǒng)主存儲器

      除了嵌入式系統(tǒng),MLC PCM也可作為主存儲器被應用于高性能通用計算系統(tǒng)中.相比于嵌入式系統(tǒng),通用計算系統(tǒng)的存儲結(jié)構和應用更加復雜,這使得為嵌入式系統(tǒng)設計的MLC PCM優(yōu)化方法不適用于通用計算系統(tǒng),這種不適應主要體現(xiàn)在3個方面:

      1) 應用于嵌入式系統(tǒng)的這些方法只適用于能夠在編譯階段進行分析的靜態(tài)應用,而無法適用于動態(tài)應用;

      2) 由于cache的過濾效應,原有方法難以應用在基于cache的系統(tǒng)上,這是因為cache使得對MLC PCM存儲器的讀/寫操作分布與應用中產(chǎn)生的讀/寫請求分布不同;

      3) 操作系統(tǒng)對內(nèi)存的管理會使得實際的訪存行為特征與基于靜態(tài)分析做出的預測結(jié)果更加不同.由于cache和操作系統(tǒng)在通用計算系統(tǒng)中都是不可或缺的組成部分,同時通用計算系統(tǒng)上所運行的程序多為動態(tài)應用,因此,這類基于靜態(tài)分析的方法難以應用在通用計算系統(tǒng)上.

      針對這些問題,文獻[21]提出了一種名為RRM的新型解決方案,實現(xiàn)了MLC PCM主存儲器性能與壽命的平衡提升.文獻[21]首先分析了典型應用在運行時寫訪存請求的分布情況,發(fā)現(xiàn)在典型應用中絕大多數(shù)寫請求集中于少數(shù)內(nèi)存區(qū)域中.文獻[21]將這類內(nèi)存區(qū)域稱為寫訪存熱點區(qū)域(hot-written memory region),其余區(qū)域為寫訪存非熱點區(qū)域(cold-written memory region).在RRM中,包含2種寫操作:1)采用較多迭代周期、弱電流的長保持時間寫操作(long retention write),簡稱LR寫;2)采用較少迭代周期、強電流的短保持時間寫操作(short retention write),簡稱SR寫.對于采用SR寫的存儲單元,由于其狀態(tài)保持時間較短,需要定期對其進行刷新操作.RRM對寫訪存熱點區(qū)域采用SR寫操作,對非熱點區(qū)域則采用LR寫操作,由于大部分的寫請求使用低延遲的SR寫操作完成,內(nèi)存系統(tǒng)的性能與只采用LR寫操作的系統(tǒng)相比將得到很大的提升.同時,由于熱寫區(qū)域相對較少,因此與全部采用SR寫操作的系統(tǒng)相比,該系統(tǒng)中的刷新操作顯著減少,同時內(nèi)存的壽命也會得到提升.

      RRM的系統(tǒng)結(jié)構如圖7所示,RRM位于末級高速緩存(LLC)和內(nèi)存控制器(memory controller,MC)之間.RRM將記錄寫操作的目標地址,并根據(jù)這些記錄預測當前寫操作的目標地址是否屬于熱寫區(qū)域.對于寫訪問熱點區(qū)域,將采用SR寫操作,而對于其他區(qū)域則采用LR寫操作.此外,為了保證數(shù)據(jù)正確性,RRM將定期對部分內(nèi)存區(qū)域發(fā)送刷新請求.當熱寫區(qū)域變?yōu)槔鋵憛^(qū)域時,RRM將使用LR寫操作刷新之前的寫訪存熱點區(qū)域.由于使用了動態(tài)寫模式選擇技術,RRM平衡了MLC PCM存儲器的性能與壽命.需要說明的是,由于RRM只記錄熱寫區(qū)域信息,因此RRM所需要的存儲開銷非常有限.實驗結(jié)果表明,與LR寫靜態(tài)策略相比,RRM可使系統(tǒng)性能平均提升62.0%,同時壽命可達到LR寫靜態(tài)策略的60%.

      與RRM不同,文獻[52]通過對典型應用寫訪存請求的時間分布特征進行分析,發(fā)現(xiàn)典型應用中寫訪存請求的時間分布具有明顯的不均勻性.基于這一特性,文獻[52]提出了一種名為QnD的輕量級的寫訪存性能優(yōu)化方案.該方案通過對內(nèi)存控制器中寫訪存隊列的負載進行感知,當系統(tǒng)中寫訪存請求較多時,動態(tài)選擇使用SR寫模式完成寫請求,然后在目標地址狀態(tài)保持時間結(jié)束之前使用LR寫模式對其進行刷新;而在系統(tǒng)中寫訪存請求較少時,則直接使用LR寫模式完成寫請求.通過這樣的寫模式選擇機制,QnD使用極低的硬件開銷實現(xiàn)了MLC PCM主存儲器的性能提升,同時存儲器壽命并未大幅下降.實驗結(jié)果表明,QnD可實現(xiàn)30.9%的性能提升,同時存儲器壽命達到7.58年.

      4.3 其他存儲設備

      除了主存儲器之外,MLC PCM也被用作文件緩沖器等其他存儲設備.對于這類存儲設備,結(jié)合其應用特征,依然可以利用寫延遲與狀態(tài)保持時間的關系進行優(yōu)化.

      文獻[53]提出了一種名為Amnesic Cache的基于MLC PCM的文件緩存,該緩存工作于LLC與SSD/硬盤之間.Amnesic Cache的主要目標是降低對MLC PCM的訪問延遲,其首先使用低延遲寫操作執(zhí)行所有寫請求,然后使用長延遲寫操作進行刷新,以此換取較長的狀態(tài)保持時間.但是,Amnesic Cache不適用于基于MLC PCM主存的通用計算系統(tǒng):首先,Amnesic Cache需要較大的輔助存儲器配合工作,因為其需要記錄每一個寫操作的信息以便在其失效前進行刷新;其次,在執(zhí)行每一個寫請求時,Amnesic Cache都需要對于一個存儲區(qū)塊進行多次寫操作,這將使得存儲器壽命降低.Amnesic Cache作為文件緩存可以與SSD和主存很好地配合工作,這是由于其寫操作并不頻繁,因而對器件壽命的要求并不高.但是,這項技術卻不適用于通用計算系統(tǒng)的主存儲器.與Amnesic Cache類似,文獻[54]提出了基于“低延遲-低狀態(tài)保持時間寫操作”的MLC NAND Flash加速技術,由于這項技術也需要復雜的硬件結(jié)構和機制用于對狀態(tài)保持時間做出追蹤,因此這項技術也很難被用于主存儲器中.

      文獻[54]提出了一種名為NVM Duet的技術,該技術為主存和外部存儲提供了一種統(tǒng)一的存儲架構.在NVM Duet中,PCM可被用于主存或外部存儲器件,當PCM作為主存使用時,NVM Duet為其使用“低延遲-低狀態(tài)保持時間”寫模式;而當PCM作為外部存儲器時,NVM Duet為其選用“長延遲-長狀態(tài)保持時間”寫模式.但是,對于一個應用模式,NVM Duet只能采用一種寫模式.而對于主存而言,訪問行為的特征是時刻變化的,因此NVM Duet的技術并不適用于主存.此外,由于NVM Duet需要操作系統(tǒng)的支持,因此也難以在目前主流的商用操作系統(tǒng)中得到應用.

      4.4 小 結(jié)

      表5列舉了本節(jié)所介紹的基于“寫訪問延遲-狀態(tài)保持時間動態(tài)權衡特性”的相關優(yōu)化工作,并將其與應用傳統(tǒng)體系結(jié)構方法的相關工作進行了簡要比較.從表5可以看出,盡管基于傳統(tǒng)體系結(jié)構方法的優(yōu)化工作可在性能或壽命方面取得顯著效果(如文獻[2]),但是采用動態(tài)權衡特性的工作可同時對多個目標提供優(yōu)化,從而更好地滿足實際系統(tǒng)的需求.此外,絕大多數(shù)基于動態(tài)權衡特性的優(yōu)化工作不需要輔助存儲,同時避免了使用復雜的控制邏輯和修改操作系統(tǒng),這也使得基于動態(tài)權衡特性的優(yōu)化工作更容易被實際系統(tǒng)所使用.

      5 總結(jié)與展望

      處理器性能的提升對存儲系統(tǒng)的訪問速度和能效提出了更高的要求.然而,現(xiàn)有存儲系統(tǒng)無法滿足高性能計算的需求,成為了提升系統(tǒng)整體性能和能效比的瓶頸.在這一背景下,新型非易失存儲器件的出現(xiàn)為提高存儲系統(tǒng)的能效比提供了新的選擇.近年來,學術界和工業(yè)界開始嘗試使用新型非易失存儲器件替代原有的存儲器件.但是,這種做法面臨著諸多問題.首先,新型非易失存儲器件存在諸多與傳統(tǒng)存儲器件不同的電氣特性,如讀寫延遲不對稱、寫壽命有限等,這使得直接使用這類器件替換原有存儲器件的方法無法發(fā)揮其優(yōu)勢;其次,現(xiàn)有的軟件系統(tǒng)都是基于原有存儲器件特性進行開發(fā)的,其算法和數(shù)據(jù)結(jié)構的設計也是基于原有器件進行優(yōu)化,這些算法不能很好地適用于新的存儲器件;最后,新型存儲器件的引入給系統(tǒng)設計帶來了新的問題.

      Table 5 Qualitative Comparison of Optimization Using the Write Latency vs. Retention Time Trade-off表5 基于“寫訪問延遲-狀態(tài)保持時間動態(tài)權衡特性”的相關優(yōu)化工作比較

      長期以來,計算機硬件性能的提升來源于器件領域和計算機體系結(jié)構領域共同的努力.這種合作通常表現(xiàn)為2種形式:1)器件領域更關注器件的靜態(tài)特性(如讀/寫延遲、壽命等),而體系結(jié)構領域則致力于調(diào)整計算機的硬件結(jié)構,使其能夠更好地適應器件的特性;2)體系結(jié)構工程師將對于器件的需求提交給器件工程師,而器件工程師則會調(diào)整器件的結(jié)構和參數(shù)以滿足特定系統(tǒng)的需求.但是,由于之前的研究中往往追求“完美”的器件(如兼具更短的讀/寫延遲和更長的壽命),NVM器件中不同參數(shù)間存在的動態(tài)權衡關系并沒有得到器件領域足夠的重視,因此體系結(jié)構領域也并沒有充分利用這些動態(tài)特性.

      本文對近年來基于NVM器件自身動態(tài)權衡特性的體系結(jié)構研究工作進行了梳理.通過梳理我們發(fā)現(xiàn),這類工作通常包含4個步驟:1)器件和材料研究人員發(fā)現(xiàn)并歸納出NVM器件中所包含的動態(tài)權衡特性;2)計算機體系結(jié)構設計人員對目標應用對NVM存儲器的訪問特征進行分析,包括訪存請求的空間分布、時間分布等;3)在此基礎上,體系結(jié)構設計人員為NVM存儲器動態(tài)權衡特性和目標應用訪存特征尋找結(jié)合點,以探索利用NVM動態(tài)權衡特性對系統(tǒng)進行優(yōu)化的可能性;4)根據(jù)前述3個分析結(jié)果,體系結(jié)構設計人員在處理器中加入應用特性感知電路以及動態(tài)權衡調(diào)節(jié)信號生成電路,以便利用NVM存儲器的動態(tài)權衡特性為應用所表現(xiàn)出的不同訪存特征動態(tài)選擇適當?shù)腘VM存儲器參數(shù)或工作狀態(tài).通過上述分析和設計過程,基于NVM存儲器動態(tài)權衡特性的體系結(jié)構設計可以實現(xiàn)同時對多個目標進行優(yōu)化的目的,例如在RRM技術中[21],通過對MLC PCM存儲器中寫延遲與狀態(tài)保持時間之間的動態(tài)權衡關系加以利用,為寫訪存熱點區(qū)域和非熱點區(qū)域選擇不同的寫模式,RRM實現(xiàn)了系統(tǒng)性能與NVM存儲器壽命的平衡優(yōu)化,在性能提升62.0%的同時使存儲器壽命達到了理論最優(yōu)值的60%.

      對于基于NVM存儲器動態(tài)權衡特性的體系結(jié)構優(yōu)化研究工作,我們認為在4個方面仍存在著機遇與挑戰(zhàn):

      1) 物理學和器件領域研究的不斷發(fā)展,為體系結(jié)構研究提供了新的機遇.一方面,隨著新型存儲材料的應用,相關體系結(jié)構設計過程中需要考慮新器件中不同于傳統(tǒng)器件的特性;另一方面,隨著對現(xiàn)有NVM材料研究的深入,新的動態(tài)權衡關系不斷被發(fā)現(xiàn).如何利用這些新材料和新的動態(tài)權衡關系進行計算機體系結(jié)構層面的優(yōu)化設計,將是一個非常具有挑戰(zhàn)性的問題.

      2) 現(xiàn)有的研究工作大多是利用器件的一項動態(tài)權衡關系進行優(yōu)化設計,但是在真實的器件中往往同時存在多個動態(tài)權衡關系.因此,如何同時利用多個動態(tài)權衡關系進行優(yōu)化設計是一個值得關注的研究方向.

      3) 在利用動態(tài)權衡關系進行優(yōu)化設計的過程中,往往需要引入新的輔助結(jié)構,這增加了系統(tǒng)中參數(shù)的數(shù)量;同時,系統(tǒng)中原有參數(shù)的選擇也會對新引入的輔助結(jié)構的性能造成影響.這些問題使得原有芯片設計中的經(jīng)驗參數(shù)無法滿足新的系統(tǒng)設計需要.因此,如何針對基于器件動態(tài)權衡關系的設計,在更大的設計空間內(nèi)探索優(yōu)化的參數(shù)組合,將是體系結(jié)構研究人員和設計人員需要面對的重要問題.

      4) 基于器件動態(tài)權衡特性進行系統(tǒng)結(jié)構設計依賴于對應用行為特征的分析和利用.因此,隨著人工智能、生物信息學等新型應用的不斷涌現(xiàn),如何分析、挖掘這些新的應用中的特征,尋找這些特征與器件特性的結(jié)合點,也是此類工作未來研究的重要方向.

      猜你喜歡
      存儲單元權衡體系結(jié)構
      一種28 nm工藝下抗單粒子翻轉(zhuǎn)SRAM的12T存儲單元設計
      權衡“輕”“重” 吃透密度
      如何權衡阿司匹林預防心血管病的獲益與風險
      中老年保健(2021年4期)2021-08-22 07:08:26
      數(shù)據(jù)在計算機內(nèi)存中的存儲形式及實驗驗證
      一種成本更低的全新靜態(tài)DRAM存儲單元
      MiR-125a-5p is Upregulated in Plasma of Residents from An Electronic Waste Recycling Site
      基于粒計算的武器裝備體系結(jié)構超網(wǎng)絡模型
      基于探索與開發(fā)權衡的地磁仿生導航搜索方法
      作戰(zhàn)體系結(jié)構穩(wěn)定性突變分析
      基于DODAF的裝備體系結(jié)構設計
      黑龙江省| 冷水江市| 报价| 吉水县| 罗平县| 儋州市| 吴桥县| 昌图县| 如皋市| 双城市| 丰原市| 九寨沟县| 罗江县| 喜德县| 盐边县| 洛阳市| 师宗县| 阜阳市| 灯塔市| 沙湾县| 安康市| 开平市| 宣恩县| 垦利县| 西城区| 丹巴县| 内黄县| 无锡市| 高密市| 保定市| 双桥区| 铁岭县| 光山县| 南陵县| 元阳县| 怀远县| 上高县| 安新县| 涡阳县| 钟祥市| 安平县|