寫入快取設定不起作用

寫入快取設定不起作用

我使用的是 Debian 8.0 x64,具有 72 GB RAM,有 4 個驅動器配置為軟體 RAID 0。

Linux s1 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux

我嘗試在實際寫入之前將髒頁設定為 2GB 快取。我還嘗試將“dirty_ratio”和“dirty_background_ratio”設定設為使用 50% 的 RAM,但這也不起作用。 pdflush 守護程式應每分鐘啟動一次,髒頁的過期時間設定為 10 分鐘。

我使用“iotop”檢查了磁碟 I/O,它顯示磁碟有很高的寫入活動。另外「cat /proc/meminfo」顯示「Dirty」值正在變小(可能是由於寫入)。在檢查之前我運行了“sync”和“drop_caches”。我測試使用“dd”命令寫入 1GB 的零檔案。

  • 以下是設定:

echo 0 > /proc/sys/vm/dirty_background_ratio

迴聲 2147483648 > /proc/sys/vm/dirty_background_bytes

echo 0 > /proc/sys/vm/dirty_ratio

迴聲 2147483648 > /proc/sys/vm/dirty_bytes

echo 6000 > /proc/sys/vm/dirty_writeback_centisecs

echo 30000 > /proc/sys/vm/dirty_expire_centisecs

  • 安裝選項:

/dev/md0 on /test type ext4 (rw,noatime,nodiratime,nobarrier,stripe=512)

建議?

答案1

嘗試增加您必須建立的 md/stripe_cache_size 文件

#/etc/udev/rules.d/83-md-stripe-cache.rules
KERNEL=="md*", ACTION=="add", TEST=="md/stripe_cache_size", ATTR{md/stripe_cache_size}="8192"

它在 Raid-6 上對我有用

我建議你減少髒率,因為它在 x64 系統上給我帶來了問題,我使用這個設置

添加 /etc/sysctl.conf

vm.dirty_bytes = 16777216 #16Mb
vm.dirty_background_bytes = 835584 #mb

答案2

不要用於dd此測試。使用其他命令,例如cp,您將看到寫入快取正常運作。

相關內容