私は、72 GB の RAM とソフトウェア RAID 0 として構成された 4 つのドライブを搭載した Debian 8.0 x64 を使用しています。
Linux s1 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux
実際の書き込みの前に、ダーティ ページを 2GB キャッシュに設定してみました。また、RAM の 50% を使用するように「dirty_ratio」と「dirty_background_ratio」設定を設定してみましたが、これも機能しませんでした。pdflush デーモンは 1 分ごとに起動する必要があり、ダーティ ページの有効期限は 10 分に設定されていました。
「iotop」を使用してディスク I/O をチェックしたところ、ディスクの書き込みアクティビティが高いことがわかりました。また、「cat /proc/meminfo」では、「Dirty」値が小さくなっていることがわかりました (おそらく書き込みによるもの)。チェックする前に、「sync」と「drop_caches」を実行しました。「dd」コマンドを使用して、ゼロの 1GB ファイルを書き込むテストを行いました。
- 設定は次のとおりです。
エコー 0 > /proc/sys/vm/dirty_background_ratio
エコー 2147483648 > /proc/sys/vm/dirty_background_bytes
エコー 0 > /proc/sys/vm/dirty_ratio
エコー 2147483648 > /proc/sys/vm/dirty_bytes
エコー 6000 > /proc/sys/vm/dirty_writeback_centisecs
エコー 30000 > /proc/sys/vm/dirty_expire_centisecs
- マウントオプション:
/dev/md0 の /test タイプ 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
と、書き込みキャッシュが正常に動作していることがわかります。