Linux; stripe_cache_sizeとは何ですか?


10

現在、mdadmユーティリティを使用してLinuxでソフトウェアRAIDを構築しています。そのRAIDのstripe_cache_size値を増やす方法と、stripe_cache_sizeの適切な値を計算する方法を説明する記事をいくつか読んだことがあります。

私は16384に増やし、/ proc / mdstatの新しいRAID5での現在の同期レートが71065K /秒から143690K /秒(2倍)に急上昇しました。これは朗報です。また、RAM使用量の一致と予想される増加もわかりますが、この設定の機能とその動作に関するドキュメントは見つかりません。

これは、RAMに存在するRAIDのある種のキャッシュのようです。その名前とそれを変更することによる影響から、私が知ることができるのはそれだけです。この設定とその説明に関する公式の「Linux」ドキュメントはありますか?

回答:


6

私の理解では、stipe_cache_sizeはストライプキャッシュ内のストライプエントリの数です。ストライプエントリはシステムによって異なりますが、ほとんどはページサイズによって制御されます(Linuxシステムではデフォルトの4096バイト)(https://github.com/torvalds/linux/blob/master/drivers/md/raid5.c #L73、このファイルには、より深く掘り下げたい場合にストライプキャッシュのすべてのロジックが含まれています)。4ディスクRAID5では、32768のstripe_cache_sizeで512MBのRAMのコストがかかります。私が知る限り、それはraid5にのみ影響します。

ここでは2つのドキュメントの参照がある: - https://github.com/torvalds/linux/blob/master/Documentation/md.txt#L603 - https://raid.wiki.kernel.org/index.php/Performance#Some_problem_solving_for_benchmarking


1
何のエントリ数、あなたの答えは少し曖昧ですか?:)
jwbensley 2014年

RAID6にも当てはまると思います
MrCalvin

32768には512kBのRAMが必要になるということですか?
jrwren
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.