DRAM記憶體模擬持久化裝置的方法

2021-08-16 05:37:28 字數 861 閱讀 3142

由於持久化記憶體介質nvm技術的發展,越來越多的科研工作者投身到nvm相關的研究當中。但由於目前工業界並沒有推出廣泛使用的nvm介質裝置,所以科研工作都需要自己以現有的條件,模擬nvm裝置使用場景。乙個簡單的方法是:通過修改dram模擬器,達到模擬nvm的目的(可以參考:dramsim2模擬器分析與應用)。更高階的方式是:在真實系統中,將記憶體劃分出一塊兒,用來模擬nvm裝置(類似於傳統的ramdisk)。

這裡我們主要介紹如何劃分dram,作為模擬nvm的基礎。

一、首先檢視自己系統的記憶體使用情況。(在下圖中,紅框顯示了一大塊兒可用記憶體空間:從4g到 ~8g)

二、因此我們將[4g,8g]這部分空間劃分出來。如下圖所示,主要是通過在grub檔案中新增紅框中命令實現。

三、如下圖,更新grub並重啟。

四、如下圖,檢視使用者態記憶體情況,發現對應的[4g,8g]空間已經變為persistent狀態。

五、如下圖,同時可以發現,系統已經識別出pmem0m持久化裝置,我們可以像操作磁碟裝置一樣對其操作。

redis記憶體優化 事物 持久化

先了解乙個 k v資料的記憶體比例 set kk v111 分兩個部分。每個k v 佔據的空間 bucket佔據的空間 bucket 每個k v 資料之間佔的記憶體 大於 k v 個數的 2的n次方大小的最小值 比如 次處只有1個資料 那麼佔的大小就是 2的1次方 bucket 2bit dicte...

記憶體模擬裝置進行驅動程式設計

裝置驅動 在linux的裝置驅動程式設計中,都需要遵從一種核心程式設計的模式,這也可以理解為一種設計模式 design pattern 這種模式讓硬體programmer脫離硬體平台,開始和作業系統打交道,就像業務和邏輯分離一樣,提高了 的可復用性。但是這樣依然沒有說清楚到底linux使用者是如何使...

塊裝置驅動(記憶體模擬硬碟)

搜尋 blk init queut 參考 drivers block xd.c 和 drivers block z2ram.c 兩個檔案。看乙個驅動程式從 入口函式 開始看。處理函式 放到佇列 放到gendisk 其他屬性 gengdisk 最終效果,檔案系統通過處理函式來實現相應的功能.塊裝置驅動...