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

適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法及混合主存架構(gòu)系統(tǒng)與流程

文檔序號(hào):12785992閱讀:277來源:國(guó)知局
適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法及混合主存架構(gòu)系統(tǒng)與流程
本發(fā)明屬于數(shù)據(jù)頁緩存領(lǐng)域,尤其涉及一種適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法及混合主存架構(gòu)系統(tǒng)。
背景技術(shù)
:非易失性存儲(chǔ)器(Non-VolatileMemory,NVM)的生產(chǎn)技術(shù)近年來以驚人的速度飛速發(fā)展,這使得計(jì)算系統(tǒng)的數(shù)據(jù)存儲(chǔ)機(jī)制獲得了重大的變革和契機(jī)。計(jì)算機(jī)硬件技術(shù)不斷發(fā)展,計(jì)算機(jī)體系結(jié)構(gòu)也在不斷的演進(jìn),然而,計(jì)算與存儲(chǔ)間的不平衡卻越來越嚴(yán)重。處理器與存儲(chǔ)器間日益增大的性能差異,傳統(tǒng)DRAM等易失性器件空間擴(kuò)展性的制約,存儲(chǔ)能耗的加劇上升,使得“存儲(chǔ)墻”問題日益嚴(yán)重。研究和設(shè)計(jì)高效能的存儲(chǔ)架構(gòu)已成為刻不容緩的需求,尋求解決存儲(chǔ)墻問題的課題已成為工業(yè)界和學(xué)術(shù)界共同關(guān)注的熱點(diǎn)。而隨著新型非易失存儲(chǔ)器件的出現(xiàn),其高密度、低功耗、非易失性的特點(diǎn)迅速得到廣泛的關(guān)注,“存儲(chǔ)墻”這一問題有望得到根本上的解決。非易失存儲(chǔ)器PRAM不僅具備媲美輔存的高密度特性,又同時(shí)兼具了內(nèi)存的字節(jié)可尋址、原位更新和高速的隨機(jī)訪問特性。PRAM的諸多優(yōu)勢(shì):非易失、高密度、極低的靜態(tài)功耗等;同時(shí),其作為主存的不足之處也非常鮮明:寫能耗高、寫延遲長(zhǎng)、受限的寫耐久性等。如表1所示,PRAM與DRAM相比,優(yōu)勢(shì)明顯,但完全取代DRAM尚有限制。表1PRAM與DRAM對(duì)比屬性DRAMPRAM存儲(chǔ)特點(diǎn)易失非易失讀延遲15ns20ns寫延遲15ns150ns讀能耗~0.1NJ/b~0.2NJ/b寫能耗~0.1NJ/b~1.0NJ/b空閑能耗~1.3W/GB~0.05W/GB密度低高(約4倍于DRAM)耐久性1018106-108PRAM無論被用作輔存以優(yōu)化I/O性能,還是被用作DRAM的擴(kuò)展,都是可行且具有其優(yōu)越性的。PRAM的特點(diǎn),使得基于內(nèi)外存統(tǒng)一編址的存儲(chǔ)體系結(jié)構(gòu)成為可能。DRAM制造工藝一直是制約主存空間擴(kuò)展的瓶頸之一,可以將PRAM直接用于DRAM的擴(kuò)展,形成如圖1所示的DRAM/PRAM混合主存架構(gòu),統(tǒng)一編址,形成一個(gè)統(tǒng)一地址空間的主存整體。這樣一來可以充分發(fā)揮兩種存儲(chǔ)器的優(yōu)點(diǎn):DRAM的訪存延遲小、訪存能耗低;PRAM的靜態(tài)功耗低、非易失而無需耗費(fèi)刷新能耗。雖然帶來了好處,但也存在一定的弊端:DRAM的高靜態(tài)能耗和周期性的刷新能耗;PRAM較大的寫延遲、寫能耗以及受限的寫磨損。頁緩存為諸如傳統(tǒng)硬盤(HardDiskDrive,HDD)或固態(tài)硬盤(SolidStateDisk,SSD)等輔存裝置提供透明緩存。操作系統(tǒng)在主存儲(chǔ)器中維護(hù)頁面的高速緩存,從而保證對(duì)緩存頁內(nèi)容的高速訪問,以及實(shí)現(xiàn)系統(tǒng)總體性能的改善。在頁緩存管理機(jī)制中,頁面具有“時(shí)近性”和“頻度”兩個(gè)技術(shù)指標(biāo)?!皶r(shí)近性”是指該頁面最近會(huì)被再次訪問,或者理解為絕對(duì)時(shí)間內(nèi)是否會(huì)被再次訪問;而“頻度”是指該頁面的在整個(gè)執(zhí)行周期過程中被訪問的次數(shù),或者理解為在設(shè)定時(shí)間內(nèi)頁面是否會(huì)被再次訪問。傳統(tǒng)CLOCK算法對(duì)于頁面訪存的“時(shí)近性”特點(diǎn)有很好的效果,但對(duì)頁面訪存的“頻度”沒有相應(yīng)設(shè)計(jì)。對(duì)于傳統(tǒng)空間有限的主存系統(tǒng),僅考慮緩存頁的“時(shí)近性”是有效的,隨著非易失主存的應(yīng)用,主存空間得以擴(kuò)展,綜合捕捉緩存頁的“時(shí)近性”和“頻度”屬性是有效的優(yōu)化方式。技術(shù)實(shí)現(xiàn)要素:為了解決現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的第一目的是提供一種適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法,該方法能夠緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。本發(fā)明的一種適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法,包括:步驟1:混合主存系統(tǒng)接收頁面操作請(qǐng)求,當(dāng)頁面操作請(qǐng)求是寫頁面請(qǐng)求時(shí),將寫頁面請(qǐng)求的頁面放入DRAM;當(dāng)頁面操作請(qǐng)求是讀頁面請(qǐng)求,將讀頁面請(qǐng)求的頁面放入PRAM;步驟2:混合主存系統(tǒng)根據(jù)頁面的寫密集型標(biāo)志位來篩選出寫密集型緩存頁,并僅將寫密集型緩存頁從PRAM遷移至DRAM中進(jìn)行緩存。進(jìn)一步的,該方法還包括:當(dāng)混合主存系統(tǒng)接收調(diào)取緩存頁請(qǐng)求時(shí)且待調(diào)取緩存頁的寫密集型標(biāo)志位為1時(shí),將待調(diào)取的緩存頁放入DRAM緩存中。其中,對(duì)于PRAM中被判定的寫密集型頁,本發(fā)明會(huì)將其遷移至DRAM中,有效的減少和避免“壞遷移”。所謂“壞遷移”是指:當(dāng)最初在PRAM中的頁被判定為寫密集型而遷移到DRAM中,由于長(zhǎng)時(shí)間未被寫入又被遷移回PRAM;當(dāng)最初在DRAM中的頁被判定為讀密集型而遷入PRAM,但很快會(huì)因?yàn)檩^多的寫操作被遷移回DRAM中。進(jìn)一步的,在所述步驟1中,當(dāng)DRAM或PRAM的緩存已滿,則混合主存系統(tǒng)選擇空閑區(qū)域分配存儲(chǔ)。這樣避免出現(xiàn)DRAM或PRAM的緩存已滿,無法存儲(chǔ)緩存頁的問題。進(jìn)一步的,該方法還包括:從相應(yīng)緩存介質(zhì)中尋找置換頁,其具體過程包括:根據(jù)待替換頁的寫密集型標(biāo)志位的值判定:若寫密集型標(biāo)志位為1,則說明待替換頁為寫密集型頁,需要從DRAM中尋找替換頁;若寫密集型標(biāo)志位為0,則從整個(gè)緩存中尋找替換頁。本發(fā)明充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。進(jìn)一步的,該方法還包括:設(shè)置歷史鏈表,用來記錄距離當(dāng)前時(shí)刻預(yù)設(shè)時(shí)間間隔的被置換出來的頁面。本發(fā)明通過設(shè)置歷史鏈表,減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。本發(fā)明的第二目的是提供一種DRAM/PRAM混合主存架構(gòu)系統(tǒng)。本發(fā)明的一種DRAM/PRAM混合主存架構(gòu)系統(tǒng),包括:請(qǐng)求接收模塊,其用于接收頁面操作請(qǐng)求,當(dāng)頁面操作請(qǐng)求是寫頁面請(qǐng)求時(shí),將寫頁面請(qǐng)求的頁面放入DRAM;當(dāng)頁面操作請(qǐng)求是讀頁面請(qǐng)求,將讀頁面請(qǐng)求的頁面放入PRAM;緩存頁遷移模塊,其用于根據(jù)頁面的寫密集型標(biāo)志位來篩選出寫密集型緩存頁,并僅將寫密集型緩存頁從PRAM遷移至DRAM中進(jìn)行緩存。進(jìn)一步的,該系統(tǒng)還包括:調(diào)取模塊,其用于當(dāng)混合主存系統(tǒng)接收調(diào)取緩存頁請(qǐng)求時(shí)且待調(diào)取緩存頁的寫密集型標(biāo)志位為1時(shí),將待調(diào)取的緩存頁放入DRAM緩存中。其中,對(duì)于PRAM中被判定的寫密集型頁,本發(fā)明會(huì)將其遷移至DRAM中,有效的減少和避免“壞遷移”。所謂“壞遷移”是指:當(dāng)最初在PRAM中的頁被判定為寫密集型而遷移到DRAM中,由于長(zhǎng)時(shí)間未被寫入又被遷移回PRAM;當(dāng)最初在DRAM中的頁被判定為讀密集型而遷入PRAM,但很快會(huì)因?yàn)檩^多的寫操作被遷移回DRAM中。進(jìn)一步的,在所述請(qǐng)求接收模塊中,當(dāng)DRAM或PRAM的緩存已滿,則混合主存系統(tǒng)選擇空閑區(qū)域分配存儲(chǔ)。這樣避免出現(xiàn)DRAM或PRAM的緩存已滿,無法存儲(chǔ)緩存頁的問題。進(jìn)一步的,該系統(tǒng)還包括:尋找置換頁模塊,其用于從相應(yīng)緩存介質(zhì)中尋找置換頁,其具體過程包括:根據(jù)待替換頁的寫密集型標(biāo)志位的值判定:若寫密集型標(biāo)志位為1,則說明待替換頁為寫密集型頁,需要從DRAM中尋找替換頁;若寫密集型標(biāo)志位為0,則從整個(gè)緩存中尋找替換頁。本發(fā)明充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。進(jìn)一步的,該系統(tǒng)還包括:歷史鏈表設(shè)置模塊,其用于設(shè)置歷史鏈表來記錄距離當(dāng)前時(shí)刻預(yù)設(shè)時(shí)間間隔的被置換出來的頁面。本發(fā)明通過設(shè)置歷史鏈表,減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。本發(fā)明的有益效果為:(1)對(duì)比于傳統(tǒng)緩存調(diào)度策略,本發(fā)明的該方法依據(jù)局部性原理,通過增加“歷史隊(duì)列”減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。(2)本發(fā)明充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。(3)優(yōu)化DRAM和PRAM間的數(shù)據(jù)遷移:通過對(duì)數(shù)據(jù)讀寫操作的記錄,以區(qū)分?jǐn)?shù)據(jù)讀寫屬性,將寫密集型數(shù)據(jù)遷移至DRAM中;綜合數(shù)據(jù)寫操作的“時(shí)近性”和“頻度”,降低數(shù)據(jù)在兩種主存介質(zhì)間的“壞遷移”。附圖說明圖1是DRAM/PRAM混合主存架構(gòu)圖;圖2是本發(fā)明的適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法模型圖;圖3是本發(fā)明的緩存頁管理過程示意圖;圖4是本發(fā)明的緩存頁遷移過程示意圖;圖5是本發(fā)明的緩存頁調(diào)度過程示意圖。具體實(shí)施方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明在傳統(tǒng)主存的頁緩存機(jī)制研究基礎(chǔ)上,面向由DRAM和PRAM構(gòu)成的統(tǒng)一混合主存優(yōu)化緩存管理策略,提出了一種適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法。本發(fā)明的一種適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法,包括:步驟1:混合主存系統(tǒng)接收頁面操作請(qǐng)求,當(dāng)頁面操作請(qǐng)求是寫頁面請(qǐng)求時(shí),將寫頁面請(qǐng)求的頁面放入DRAM;當(dāng)頁面操作請(qǐng)求是讀頁面請(qǐng)求,將讀頁面請(qǐng)求的頁面放入PRAM;其中,在所述步驟1中,當(dāng)DRAM或PRAM的緩存已滿,則混合主存系統(tǒng)選擇空閑區(qū)域分配存儲(chǔ)。這樣避免出現(xiàn)DRAM或PRAM的緩存已滿,無法存儲(chǔ)緩存頁的問題。步驟2:混合主存系統(tǒng)根據(jù)頁面的寫密集型標(biāo)志位來篩選出寫密集型緩存頁,并僅將寫密集型緩存頁從PRAM遷移至DRAM中進(jìn)行緩存。在另一實(shí)施例中,該方法還包括:當(dāng)混合主存系統(tǒng)接收調(diào)取緩存頁請(qǐng)求時(shí)且待調(diào)取緩存頁的寫密集型標(biāo)志位為1時(shí),將待調(diào)取的緩存頁放入DRAM緩存中。其中,對(duì)于PRAM中被判定的寫密集型頁,本發(fā)明會(huì)將其遷移至DRAM中,有效的減少和避免“壞遷移”。所謂“壞遷移”是指:當(dāng)最初在PRAM中的頁被判定為寫密集型而遷移到DRAM中,由于長(zhǎng)時(shí)間未被寫入又被遷移回PRAM;當(dāng)最初在DRAM中的頁被判定為讀密集型而遷入PRAM,但很快會(huì)因?yàn)檩^多的寫操作被遷移回DRAM中。在另一實(shí)施例中,該方法還包括:從相應(yīng)緩存介質(zhì)中尋找置換頁,其具體過程包括:根據(jù)待替換頁的寫密集型標(biāo)志位的值判定:若寫密集型標(biāo)志位為1,則說明待替換頁為寫密集型頁,需要從DRAM中尋找替換頁;若寫密集型標(biāo)志位為0,則從整個(gè)緩存中尋找替換頁。在另一實(shí)施例中,該方法還包括:設(shè)置歷史鏈表,用來記錄距離當(dāng)前時(shí)刻預(yù)設(shè)時(shí)間間隔的被置換出來的頁面。本發(fā)明通過設(shè)置歷史鏈表,減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。具體地,本發(fā)明的適用于DRAM/PRAM混合主存架構(gòu)的頁緩存方法的原理是:采用CLOCK-HM算法。本發(fā)明對(duì)CLOCK算法的優(yōu)化主要途徑為:無需預(yù)設(shè)參數(shù),動(dòng)態(tài)捕捉緩存頁的“時(shí)近性”和“頻度”屬性,以維持和提升緩存的命中率;動(dòng)態(tài)檢測(cè)緩存頁的讀/寫屬性,實(shí)現(xiàn)讀/寫操作的優(yōu)化分配,以及遷移操作的優(yōu)化管理。從頁的角度進(jìn)行研究,需要解決的問題如下:(1)如何提升緩存的命中率,減少因缺頁引起的性能損失;(2)針對(duì)PRAM的缺陷——讀寫不均衡,寫延遲、寫能耗較大等如何盡可能避免;(3)數(shù)據(jù)在DRAM和PRAM中遷移如何進(jìn)行優(yōu)化,以降低數(shù)據(jù)在兩種主存介質(zhì)間的“壞遷移”。根據(jù)需要解決的問題,有如下解決方案:(1)對(duì)比于傳統(tǒng)緩存調(diào)度策略,算法依據(jù)局部性原理,通過增加“歷史隊(duì)列”減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。(2)充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。(3)優(yōu)化DRAM和PRAM間的數(shù)據(jù)遷移:通過對(duì)數(shù)據(jù)讀寫操作的記錄,以區(qū)分?jǐn)?shù)據(jù)讀寫屬性,將寫密集型數(shù)據(jù)遷移至DRAM中;綜合數(shù)據(jù)寫操作的“時(shí)近性”和“頻度”,降低數(shù)據(jù)在兩種主存介質(zhì)間的“壞遷移”。其中,本發(fā)明將傳統(tǒng)CLOCK算法應(yīng)用于混合頁緩存管理的優(yōu)化機(jī)制設(shè)計(jì)。如圖2所示,本發(fā)明保留CLOCK鏈表結(jié)構(gòu),同時(shí)為每個(gè)緩存頁增加元數(shù)據(jù),以及用于記錄歷史緩存頁的歷史鏈表。CLOCK鏈表CL為所有混合架構(gòu)中的緩存頁維護(hù)一個(gè)表項(xiàng),每個(gè)表項(xiàng)包括4個(gè)控制標(biāo)志位:referencebit、secondchancebit、R-writebit和W-intensivebit。鏈表指針HEADrep和TAILrep指向CL鏈表的首/尾,用于鏈表的表項(xiàng)增加。當(dāng)CL鏈表包含所有緩存頁表項(xiàng),即緩存處于滿狀態(tài)下,循環(huán)指針Hrep和Hdram用于維護(hù)CL鏈表的頁緩存管理。指針Hrep的作用類似于傳統(tǒng)CLOCK算法,在CL鏈表中循環(huán)檢索所有的DRAM和PRAM緩存頁,用于為緩存缺頁調(diào)度而搜索referencebit為0的緩存頁,并且將檢索過程中referencebit不為0的緩存頁的referencebit設(shè)置為0。而指針Hdram僅對(duì)混合緩存中的DRAM緩存頁進(jìn)行維護(hù)操作,用于搜索合適的DRAM緩存頁以備缺頁調(diào)度或頁面遷移。為了彌補(bǔ)傳統(tǒng)CLOCK算法對(duì)緩存頁訪存“頻度”的估計(jì)不足,本算法維護(hù)一個(gè)基于LRU的歷史鏈表HLL,用于記錄被置換出去的頁信息,包括頁的元數(shù)據(jù)信息。當(dāng)鏈表HLL中的頁被再次調(diào)度時(shí),設(shè)置其secondchancebit(二次機(jī)會(huì)標(biāo)志位)為1,以降低該頁被再次置換出緩存的概率,以保證訪問次數(shù)多而周期長(zhǎng)的頁面不被頻繁調(diào)度,從而降低緩存調(diào)度的缺頁率。利用referencebit(引用位)和R-writebit(再次寫標(biāo)志位)來區(qū)分緩存頁的讀寫屬性,用W-intensivebit(寫密集型標(biāo)志位)標(biāo)記寫密集型緩存頁。對(duì)于PRAM中被判定的寫密集型頁,算法會(huì)將其遷移至DRAM中。用三個(gè)動(dòng)態(tài)的控制標(biāo)志位可以有效的減少和避免“壞遷移”。本發(fā)明提出了基于混合主存的頁緩存改進(jìn)策略:為了更清楚地介紹給策略,本發(fā)明稱為CLOCK-HM算法。其中,CLOCK-HM算法包括三個(gè)組成部分:緩存頁管理模塊(CLOCK-HM-main)、緩存頁遷移模塊(PageMigrate)和緩存頁調(diào)度模塊(PageReplace)。1.緩存頁管理模塊本模塊的設(shè)計(jì)主要針對(duì)緩存頁的讀寫操作進(jìn)行管理,根據(jù)每個(gè)頁的讀寫請(qǐng)求維護(hù)該頁的控制標(biāo)志位,以及由此引起的緩存頁遷移或缺頁調(diào)度處理。如圖3所示,x是要訪問的頁,其中,緩存頁管理模塊是針對(duì)緩存區(qū)已滿時(shí)的管理過程,其初始化分配過程(即緩存區(qū)仍有空閑空間,CL鏈表長(zhǎng)度未達(dá)上限)是將寫請(qǐng)求新頁放入DRAM,而讀請(qǐng)求新頁放入PRAM,若有某介質(zhì)緩存已滿,則選擇空閑區(qū)分配。算法描述的管理過程分為兩個(gè)部分:訪問命中管理和缺頁管理。對(duì)緩存頁的命中管理分為讀操作和寫操作兩種情況。對(duì)于緩存頁的讀操作,僅需修改CL鏈表對(duì)應(yīng)條目的referencebit標(biāo)志位,將該位置1,表明該頁最近被訪問過。對(duì)于緩存頁的寫操作命中,需要對(duì)CL鏈表中對(duì)應(yīng)條目進(jìn)行相應(yīng)的維護(hù):如果該頁的W-intensivebit為1,則說明該頁已被標(biāo)記為寫密集型頁的備選,若該頁當(dāng)前被分配在PRAM中,則此次寫操作會(huì)引起該頁從PRAM向DRAM的遷移操作;若該頁已經(jīng)是DRAM緩存頁,則僅需將R-writebit和referencebit兩個(gè)標(biāo)志位置1。如果該頁的W-intensivebit為0,此次寫操作會(huì)去判定R-writebit和referencebit兩個(gè)標(biāo)志位,若兩個(gè)標(biāo)志位為1,說明最近已發(fā)生過對(duì)該頁的寫操作,則將W-intensivebit置1,該頁被推薦為寫密集型頁的候選;若R-writebit和referencebit兩個(gè)標(biāo)志位為0,則僅將其置1。對(duì)緩存頁的缺頁管理分為有歷史記錄和無歷史記錄兩種情況,并且不區(qū)分此次操作的讀寫屬性。如果所需訪問頁在歷史鏈表HLL中有記錄,說明該頁最近才被置換出來,此次操作使得該頁被再次調(diào)度,需將其secondchancebit位置1,以降低后續(xù)再次被置換出緩存的幾率,而從相應(yīng)緩存介質(zhì)中尋找置換頁的過程需要根據(jù)其W-intensivebit的值判定:若W-intensivebit為1,說明該頁為寫密集型頁,需要從DRAM中尋找替換頁;若W-intensivebit為0,則從整個(gè)緩存中尋找替換頁。對(duì)于沒有歷史記錄的新頁調(diào)度,直接在整個(gè)緩存區(qū)尋找置換頁,新頁的標(biāo)志位全部置0。2.緩存頁遷移頁面遷移僅將寫密集型緩存頁從PRAM遷移至DRAM中,而不涉及DRAM緩存頁向PRAM的遷移,這主要基于兩點(diǎn)原因:首先,為降低設(shè)計(jì)復(fù)雜度,本算法沒有對(duì)緩存頁讀密集型屬性的判定;其二,相比于PRAM,DRAM的讀操作在能耗和延遲兩方面都具有優(yōu)勢(shì),充分利用DRAM空間是本算法的一個(gè)重要設(shè)計(jì)原則。算法利用指針Hdram對(duì)鏈表CL循環(huán)檢索,不斷判定和維護(hù)R-writebit和referencebit標(biāo)志位,以尋找合適的放置空間,并將該空間的頁面置換出緩存。當(dāng)指針Hdram循環(huán)檢索鏈表CL一周卻未找到相應(yīng)空間,則終止此次遷移操作,這主要因?yàn)楫?dāng)前DRAM緩存中的頁比待遷移的PRAM緩存頁更具有留在DRAM中的優(yōu)勢(shì)。這種遲滯遷移的設(shè)計(jì)有助于降低PRAM和DRAM間的“壞遷移”,如圖4所示,x是寫密集型(W-intensive=1)緩存頁,需要從PRAM中遷移到DRAM的緩存頁。q是在CL中且q=Hdram,且Hdram指向下一個(gè)緩存頁。3.緩存頁調(diào)度如圖5所示,q=Hdram且Hdram指向下一個(gè)緩存頁,緩存頁調(diào)度是檢索用以移出緩存的恰當(dāng)已緩存頁,并維護(hù)歷史鏈表HLL的過程。如果待調(diào)入頁是歷史寫密集型頁,其W-intensivebit標(biāo)志位為1,根據(jù)局部性原理,其較大可能仍是寫密集型頁,需要放入DRAM緩存中;而其他調(diào)度請(qǐng)求則從整個(gè)混合緩存空間檢索適合的置換頁。因此,將檢索過程分為DRAM和NULL兩種類型。指針Hdram對(duì)DRAM緩存進(jìn)行檢索,并且維護(hù)secondchancebit和R-writebit標(biāo)志位,特別是對(duì)secondchancebit的維護(hù),以使以往二次被調(diào)入的頁保有再次被調(diào)出的機(jī)會(huì)。指針Hrep對(duì)整個(gè)混合緩存空間檢索,僅對(duì)referencebit進(jìn)行維護(hù),這與傳統(tǒng)CLOCK算法類似本發(fā)明的該方法通過與CLOCK、LRU-WPAM和CLOCK-DWF做比較,在一定的頁緩存大小時(shí),CLOCK-HM算法具有略高的命中率;對(duì)于寫密集型任務(wù),LOCK-HM算法對(duì)比于CLOCK、CLOCK-DWF和LRU-WPAM算法,平均減少PRAM上寫操作數(shù)量分別為72.3x%、64.6x%和70.4x%,對(duì)于CLOCK_HM算法在降低PRAM寫操作上都表現(xiàn)出較大優(yōu)勢(shì)。另外CLOCK-HM算法相比于CLOCK-DWF算法,平均減少75.0x%的遷移操作;相比于LRU-WPAM算法,平均遷移數(shù)量減少71.7x%。本發(fā)明提供的一種DRAM/PRAM混合主存架構(gòu)系統(tǒng),包括:(1)請(qǐng)求接收模塊,其用于接收頁面操作請(qǐng)求,當(dāng)頁面操作請(qǐng)求是寫頁面請(qǐng)求時(shí),將寫頁面請(qǐng)求的頁面放入DRAM;當(dāng)頁面操作請(qǐng)求是讀頁面請(qǐng)求,將讀頁面請(qǐng)求的頁面放入PRAM;在所述請(qǐng)求接收模塊中,當(dāng)DRAM或PRAM的緩存已滿,則混合主存系統(tǒng)選擇空閑區(qū)域分配存儲(chǔ)。這樣避免出現(xiàn)DRAM或PRAM的緩存已滿,無法存儲(chǔ)緩存頁的問題。(2)緩存頁遷移模塊,其用于根據(jù)頁面的寫密集型標(biāo)志位來篩選出寫密集型緩存頁,并僅將寫密集型緩存頁從PRAM遷移至DRAM中進(jìn)行緩存。進(jìn)一步的,該系統(tǒng)還包括:調(diào)取模塊,其用于當(dāng)混合主存系統(tǒng)接收調(diào)取緩存頁請(qǐng)求時(shí)且待調(diào)取緩存頁的寫密集型標(biāo)志位為1時(shí),將待調(diào)取的緩存頁放入DRAM緩存中。其中,對(duì)于PRAM中被判定的寫密集型頁,本發(fā)明會(huì)將其遷移至DRAM中,有效的減少和避免“壞遷移”。所謂“壞遷移”是指:當(dāng)最初在PRAM中的頁被判定為寫密集型而遷移到DRAM中,由于長(zhǎng)時(shí)間未被寫入又被遷移回PRAM;當(dāng)最初在DRAM中的頁被判定為讀密集型而遷入PRAM,但很快會(huì)因?yàn)檩^多的寫操作被遷移回DRAM中。進(jìn)一步的,該系統(tǒng)還包括:尋找置換頁模塊,其用于從相應(yīng)緩存介質(zhì)中尋找置換頁,其具體過程包括:根據(jù)待替換頁的寫密集型標(biāo)志位的值判定:若寫密集型標(biāo)志位為1,則說明待替換頁為寫密集型頁,需要從DRAM中尋找替換頁;若寫密集型標(biāo)志位為0,則從整個(gè)緩存中尋找替換頁。本發(fā)明充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。進(jìn)一步的,該系統(tǒng)還包括:歷史鏈表設(shè)置模塊,其用于設(shè)置歷史鏈表來記錄距離當(dāng)前時(shí)刻預(yù)設(shè)時(shí)間間隔的被置換出來的頁面。本發(fā)明通過設(shè)置歷史鏈表,減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。本發(fā)明對(duì)比于傳統(tǒng)緩存調(diào)度策略,本發(fā)明的該方法依據(jù)局部性原理,通過增加“歷史隊(duì)列”減少常用數(shù)據(jù)被頻繁置換,以此維持和提升緩存的命中率,從而減少由缺頁引起的性能損失。本發(fā)明充分利用DRAM主存空間,隱藏PRAM的讀寫不均衡性,減少混合主存中PRAM上的寫操作,以緩解PRAM寫操作引起的延遲,降低主存系統(tǒng)性能的損失;同時(shí)達(dá)到延長(zhǎng)PRAM使用壽命的目的。本發(fā)明優(yōu)化了DRAM和PRAM間的數(shù)據(jù)遷移:通過對(duì)數(shù)據(jù)讀寫操作的記錄,以區(qū)分?jǐn)?shù)據(jù)讀寫屬性,將寫密集型數(shù)據(jù)遷移至DRAM中;綜合數(shù)據(jù)寫操作的“時(shí)近性”和“頻度”,降低數(shù)據(jù)在兩種主存介質(zhì)間的“壞遷移”。上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
津南区| 册亨县| 光泽县| 徐州市| 阿尔山市| 钦州市| 大竹县| 太湖县| 榆中县| 游戏| 周口市| 册亨县| 宁乡县| 普格县| 水富县| 江北区| 尼玛县| 潮州市| 延寿县| 铁岭市| 扶风县| 宁国市| 陆良县| 宁城县| 丹江口市| 松原市| 句容市| 策勒县| 鹤山市| 营山县| 玉屏| 招远市| 芦溪县| 铜鼓县| 高密市| 贡觉县| 洛隆县| 子长县| 淳化县| 西贡区| 白山市|