欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

持久性內(nèi)存事務(wù)處理緩存管理方法與裝置的制造方法

文檔序號(hào):8905181閱讀:383來(lái)源:國(guó)知局
持久性內(nèi)存事務(wù)處理緩存管理方法與裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及非易失性主存存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種持久性內(nèi)存事務(wù)處理緩存管理方法與裝置。
【背景技術(shù)】
[0002]非易失性存儲(chǔ)器(Non-Volatile Memory, NVM)是一種新型的字節(jié)尋址的內(nèi)存級(jí)存儲(chǔ)器件,如相變存儲(chǔ)器(PCM,Phase Change Memory)、自旋矩存儲(chǔ)器(STT-RAM,Spin-TorqueTransfer RAM)、阻變存儲(chǔ)器(RRAM,Resistive RAM)等。非易失性存儲(chǔ)器具有讀寫延遲低、帶寬高、非易失、能耗低等優(yōu)點(diǎn),其讀寫性能接近于傳統(tǒng)DRAM內(nèi)存,且提供與傳統(tǒng)磁盤外存相同的持久性。因而,以非易失性存儲(chǔ)器構(gòu)建的內(nèi)存級(jí)持久性存儲(chǔ)(也被稱為“持久性內(nèi)存”)可在內(nèi)存級(jí)別提供數(shù)據(jù)持久性,無(wú)需寫回磁盤,大幅提高存儲(chǔ)系統(tǒng)的性能。
[0003]在存儲(chǔ)系統(tǒng)中,數(shù)據(jù)一致性是存儲(chǔ)系統(tǒng)正確可靠運(yùn)行的重要特性之一。數(shù)據(jù)一致性要求存儲(chǔ)系統(tǒng)在發(fā)生意外故障后能夠恢復(fù)到一致的狀態(tài)。事務(wù)管理是數(shù)據(jù)一致性維護(hù)中的常見方式之一。事務(wù)管理將同一操作中的不同數(shù)據(jù)訪問(wèn)組合成一個(gè)事務(wù),并維護(hù)該事務(wù)的原子性(atomicity)與持久性(durability)。原子性要求該事務(wù)中的數(shù)據(jù)訪問(wèn)全部完成或全部失敗。持久性要求該事務(wù)中的數(shù)據(jù)更新在系統(tǒng)掉電后不丟失。
[0004]在持久性內(nèi)存中維護(hù)數(shù)據(jù)一致性與傳統(tǒng)磁盤存儲(chǔ)系統(tǒng)中維護(hù)方式存在較大的不同。傳統(tǒng)磁盤存儲(chǔ)系統(tǒng)在內(nèi)存中維護(hù)事務(wù)數(shù)據(jù)的讀寫狀態(tài)與寫回順序性,以保證寫回磁盤的數(shù)據(jù)可恢復(fù)至一致性狀態(tài)。而持久性內(nèi)存在CPU緩存中維護(hù)事務(wù)數(shù)據(jù)的讀寫狀態(tài)與寫回順序性,從而保證寫回持久性內(nèi)存的數(shù)據(jù)可恢復(fù)至一致性狀態(tài)。傳統(tǒng)磁盤存儲(chǔ)系統(tǒng)的內(nèi)存緩存維護(hù)由操作系統(tǒng)管理,可在軟件中實(shí)現(xiàn);而持久性內(nèi)存中的內(nèi)存緩存維護(hù)由CPU緩存管理,在硬件中實(shí)現(xiàn)。傳統(tǒng)軟件方式的事務(wù)管理方式在持久性內(nèi)存中需要引入較多的刷回(^Dclflush)和屏障Gnmfence)等操作,這對(duì)CPU緩存效率影響較大,進(jìn)而影響整體性能的系統(tǒng)。
[0005]為降低持久性內(nèi)存中數(shù)據(jù)一致性維護(hù)開銷,現(xiàn)有不少做法提出對(duì)CPU緩存硬件進(jìn)行功能擴(kuò)展,以支持事務(wù)處理中事務(wù)數(shù)據(jù)的狀態(tài)跟蹤與寫回順序性保證。該類做法包括微軟研宄院的BPFS系統(tǒng)中所提的時(shí)間節(jié)點(diǎn)(epoch)機(jī)制,密西根大學(xué)所提出的多線一致性(strand consistency)機(jī)制,以及清華大學(xué)所提出的放松順序一致性(loose-orderingconsistency)機(jī)制。然而,這些方法均需要對(duì)CPU緩存硬件進(jìn)行修改。

【發(fā)明內(nèi)容】

[0006]本發(fā)明的目的旨在至少解決上述的技術(shù)缺陷之一。
[0007]為此,本發(fā)明的一個(gè)目的在于提出一種持久性內(nèi)存事務(wù)處理緩存管理方法。該方法可減少持久性內(nèi)存中的數(shù)據(jù)復(fù)制、數(shù)據(jù)持久化頻率,并在程序軟件中提高持久性內(nèi)存緩存管理效率。
[0008]本發(fā)明的另一個(gè)目的在于提出一種持久性內(nèi)存事務(wù)處理緩存管理裝置。
[0009]為了實(shí)現(xiàn)上述目的,本發(fā)明的第一方面的實(shí)施例公開了一種持久性內(nèi)存事務(wù)處理緩存管理方法,包括以下步驟:在事務(wù)開始時(shí),所述事務(wù)從非易失性內(nèi)存中讀取原版數(shù)據(jù)至處理器緩存,并由所述處理器執(zhí)行所述事務(wù);在事務(wù)執(zhí)行過(guò)程中,所述事務(wù)為產(chǎn)生的新版數(shù)據(jù)分配空間,并采用緩存竊取寫回技術(shù)以允許對(duì)未提交數(shù)據(jù)進(jìn)行持久化;在事務(wù)提交或中止時(shí),將事務(wù)數(shù)據(jù)或狀態(tài)強(qiáng)制持久化至非易失性內(nèi)存;在事務(wù)數(shù)據(jù)或狀態(tài)已持久化至非易失性內(nèi)存之后,將所述事務(wù)數(shù)據(jù)寫回至原數(shù)據(jù)地址,并采用緩存非強(qiáng)制寫回技術(shù)不強(qiáng)制已提交數(shù)據(jù)持久化至非易失性內(nèi)存;其中,事務(wù)周期性以強(qiáng)制整體刷回的形式將緩存數(shù)據(jù)持久化至所述非易失性內(nèi)存;當(dāng)系統(tǒng)發(fā)生故障時(shí),對(duì)事務(wù)數(shù)據(jù)進(jìn)行故障恢復(fù)處理。
[0010]根據(jù)本發(fā)明的持久性內(nèi)存事務(wù)處理緩存管理方法,事務(wù)處理中的數(shù)據(jù)新版本直接在非易失性內(nèi)存中分配空間,減少了臨時(shí)空間分配與數(shù)據(jù)復(fù)制,提高了內(nèi)存使用效率。另夕卜,允許未提交的數(shù)據(jù)被持久化至非易失性內(nèi)存,降低了未提交數(shù)據(jù)的狀態(tài)跟蹤代價(jià),此夕卜,該方法利用已提交數(shù)據(jù)在非易失性內(nèi)存其余地址空間的持久性版本,允許已提交數(shù)據(jù)緩存于CPU緩存中,不強(qiáng)制持久化,降低了數(shù)據(jù)持久化開銷。該方法具有以下優(yōu)點(diǎn):提升持久性內(nèi)存中事務(wù)處理效率,且在程序軟件中實(shí)現(xiàn),無(wú)需特定硬件支持,適用性強(qiáng)。
[0011]另外,根據(jù)本發(fā)明上述實(shí)施例的持久性內(nèi)存事務(wù)處理緩存管理方法還可以具有如下附加的技術(shù)特征:
[0012]進(jìn)一步地,所述持久性內(nèi)存包括易失性處理器緩存和非易失性內(nèi)存;所述事務(wù)數(shù)據(jù)首先緩存于易失性處理器緩存中,并按照依賴關(guān)系的先后順序?qū)懟厮龇且资詢?nèi)存以保證數(shù)據(jù)的一致性。
[0013]進(jìn)一步地,所述持久性內(nèi)存的緩存竊取寫回技術(shù)包括:在事務(wù)的執(zhí)行過(guò)程中,直接從所述非易失性內(nèi)存中為事務(wù)產(chǎn)生的新版數(shù)據(jù)分配空間,以避免對(duì)數(shù)據(jù)進(jìn)行復(fù)制操作;對(duì)日志區(qū)域采用固定格式的數(shù)據(jù)組織方式進(jìn)行記錄,為所述數(shù)據(jù)塊分配對(duì)應(yīng)元數(shù)據(jù)以提供系統(tǒng)故障后數(shù)據(jù)塊狀態(tài)檢測(cè),其中,所述元數(shù)據(jù)塊用于記錄數(shù)據(jù)塊的描述信息。
[0014]進(jìn)一步地,所述持久性內(nèi)存的緩存竊取寫回技術(shù)還包括:如果事務(wù)中止,在所述元數(shù)據(jù)中對(duì)中止的事務(wù)的數(shù)據(jù)塊進(jìn)行如下標(biāo)記:對(duì)已分配內(nèi)存空間且已寫回非易失性內(nèi)存的數(shù)據(jù)塊以及對(duì)已分配內(nèi)存空間但未寫回非易失性內(nèi)存的數(shù)據(jù)塊,采用元數(shù)據(jù)標(biāo)記為中止事務(wù)數(shù)據(jù)塊的方式標(biāo)記;對(duì)尚未分配內(nèi)存空間的數(shù)據(jù)塊,直接丟棄。
[0015]進(jìn)一步地,所述的持久性內(nèi)存的緩存非強(qiáng)制寫回技術(shù)包括:在事務(wù)提交時(shí),對(duì)已提交數(shù)據(jù)復(fù)制其至原版數(shù)據(jù)位置,如果其在非易失性內(nèi)存的其余地址空間中存在持久性副本,則允許持久性副本緩存于處理器緩存中;通過(guò)周期性強(qiáng)制整體寫回處理器緩存中緩存數(shù)據(jù)的方法延后持久化至非易失性內(nèi)存。
[0016]進(jìn)一步地,非強(qiáng)制寫回和強(qiáng)制整體寫回,具體包括:在系統(tǒng)故障發(fā)生時(shí),如果已提交數(shù)據(jù)未能及時(shí)持久化至非易失性內(nèi)存,則將其由非易失性內(nèi)存中其余地址空間的副本進(jìn)行恢復(fù);在強(qiáng)制寫回處理器緩存時(shí),由緩存竊取寫回技術(shù)將事務(wù)執(zhí)行過(guò)程中的未提交數(shù)據(jù)寫回非易失性內(nèi)存。
[0017]進(jìn)一步地,還包括:當(dāng)多個(gè)事務(wù)并發(fā)執(zhí)行時(shí),如果多個(gè)事務(wù)對(duì)同一數(shù)據(jù)塊進(jìn)行更新,則將數(shù)據(jù)的多版本持久化至非易失性內(nèi)存中的順序按照事務(wù)提交順序進(jìn)行。
[0018]進(jìn)一步地,當(dāng)系統(tǒng)發(fā)生故障時(shí),對(duì)事務(wù)數(shù)據(jù)進(jìn)行故障恢復(fù)處理,進(jìn)一步包括:從非易失性內(nèi)存中按所設(shè)定格式分離記錄的數(shù)據(jù)塊與元數(shù)據(jù)塊,以獲取每個(gè)數(shù)據(jù)塊的狀態(tài)信息,從而判定數(shù)據(jù)塊的提交與未提交狀態(tài),并丟棄未提交數(shù)據(jù)塊;對(duì)提交的數(shù)據(jù)塊,根據(jù)所對(duì)應(yīng)元數(shù)據(jù)塊所記錄的信息判定對(duì)應(yīng)事務(wù)的提交順序,并進(jìn)行排序;對(duì)提交事務(wù),按照提交順序排序進(jìn)行重放操作。
[0019]本發(fā)明第二方面的實(shí)施例公開了一種持久性內(nèi)存事務(wù)處理緩存管理裝置,包括:非易失性內(nèi)存;處理器緩存;和事務(wù)處理模塊,用于在事務(wù)開始時(shí),所述事務(wù)從非易失性內(nèi)存中讀取原版數(shù)據(jù)至處理器緩存,并由所述處理器執(zhí)行所述事務(wù),在事務(wù)執(zhí)行過(guò)程中,所述事務(wù)為產(chǎn)生的新版數(shù)據(jù)分配空間,并采用緩存竊取寫回技術(shù)以允許對(duì)未提交數(shù)據(jù)進(jìn)行持久化,在事務(wù)提交或中止時(shí),將事務(wù)數(shù)據(jù)或狀態(tài)強(qiáng)制持久化至非易失性內(nèi)存,在事務(wù)數(shù)據(jù)或狀態(tài)已持久化至非易失性內(nèi)存之后,將所述事務(wù)數(shù)據(jù)寫回至原數(shù)據(jù)地址,并采用緩存非強(qiáng)制寫回技術(shù)不強(qiáng)制已提交數(shù)據(jù)持久化至非易失性內(nèi)存,其中,事務(wù)周期性以強(qiáng)制整體刷回的形式將緩存數(shù)據(jù)持久化至所述非易失性內(nèi)存,并當(dāng)系統(tǒng)發(fā)生故障時(shí),對(duì)事務(wù)數(shù)據(jù)進(jìn)行故障恢復(fù)處理。
[0020]根據(jù)本發(fā)明的持久性內(nèi)存事務(wù)處理緩存管理裝置,事務(wù)處理中的數(shù)據(jù)新版本直接在非易失性內(nèi)存中分配空間,減少了臨時(shí)空間分配與數(shù)據(jù)復(fù)制,提高了內(nèi)存使用效率。另夕卜,允許未提交的數(shù)據(jù)被持久化至非易失性內(nèi)存,降低了未提交數(shù)據(jù)的狀態(tài)跟蹤代價(jià),此夕卜,該裝置利用已提交數(shù)據(jù)在非易失性內(nèi)存其余地址空間的持久性版本,允許已提交數(shù)據(jù)緩存于CPU緩存中,不強(qiáng)制持久化,降低了數(shù)據(jù)持久化開銷。該裝置具有以下優(yōu)點(diǎn):提升持久性內(nèi)存中事務(wù)處理效率,且在程序軟件中實(shí)現(xiàn),無(wú)需特定硬件支持,適用性強(qiáng)。
[0021]本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐
當(dāng)前第1頁(yè)1 2 3 4 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
商水县| 乐安县| 东明县| 兴仁县| 勃利县| 玉田县| 筠连县| 丹巴县| 高要市| 姚安县| 大冶市| 贵南县| 安徽省| 焦作市| 沂源县| 色达县| 嵊州市| 南江县| 灵武市| 深水埗区| 鹤山市| 红原县| 铜鼓县| 于田县| 项城市| 娄烦县| 洱源县| 镶黄旗| 新竹县| 石楼县| 宁国市| 湛江市| 延川县| 天峻县| 潞城市| 白银市| 南部县| 镇江市| 榆中县| 安国市| 濮阳市|