Linux中的dax特性

2021-10-03 17:46:51 字數 641 閱讀 8282

在linux中由於塊裝置一般屬於低速裝置,訪問成本很高,為了減少訪問塊裝置的次數核心一般會將訪問磁碟的內容快取起來,等下次訪問時直接從記憶體中獲得結果,這大大提高了系統的效能。所以說快取是個好東西。

但是隨著技術進步,一些類似於記憶體的塊裝置出現了,主要的有intel的nvdimm裝置,它是一種既可以當磁碟又可以當記憶體使用的儲存裝置,它的名字是非易失性記憶體,速度可以比肩記憶體,而又不會掉電丟資料。如果這種裝置來當塊裝置使用,快取就會變得多餘,本來訪問nvdimm就很快何必要快取呢,這時候快取就是累贅。可以說成也快取敗也快取。

這時候dax(direct access)就出來幫忙了,既然快取無用那就繞過快取直達塊裝置,這會提高訪問效率,這就是dax存在的意義。

除了像類記憶體的塊裝置,對於虛擬機器內部dax也有很多用武之地。對於某些虛擬機器和主機共享檔案的情況比如新進kernel的virtio-fs,因為訪問共享檔案就會在虛機內部和主機上產生兩份快取,於是dax又可以大顯身手,在虛機內部使用dax,不適用快取,這樣其實訪問的檔案內容就會由主機快取提供,少了一層快取的複製。

對於傳統的mmap對映的頁面都會有相應的page結構,但是對於dax裝置,mmap一般是沒有page結構的,對於那些跟隨傳統mmap的某些需要page結構的操作使用dax後就需要小心了,很可能會出現意想不到的bug。

參考:

dax 篩選 包含某個字 理解DAX中的資料沿襲

本文翻譯自國際power bi大師alberto ferrari的文章 understanding data lineage in dax 該文介紹了資料沿襲的定義以及資料沿襲的執行方法。資料沿襲是dax的乙個功能,但是大多數開發人員在使用它時並不知道它的存在,本文主要講解資料沿襲及其如何幫助我們生...

DAX和Power BI中的參考日期表

為什麼引用date表 power bi中提供的自動日期 時間功能存在以下幾個限制 通常,必須禁用該功能並建立自定義日期表。此任務重複且耗時。從包含功能齊全的date表的power bi模板開始建立新的power bi模型使使用者免於編寫所需的dax表示式 以及設定必要的屬性以定義顯示格式,層次結構和...

linux中make的有關規則的特性

我過去認為 makefile 只是一種將一組組的 shell 命令列出來的簡便方法 過了一段時間我了解到它們是有多麼的強大 靈活以及功能齊全。這篇文章帶你領略其中一些有關規則的特性。規則 規則是指示 make 應該如何並且何時構建乙個被稱作為目標的檔案的指令。目標可以依賴於其它被稱作為前提的檔案。你...