Linux; Stripe_cache_size là gì và nó làm gì?


10

Tôi hiện đang xây dựng RAID phần mềm trong Linux bằng mdadmtiện ích và tôi đã đọc một vài bài viết mô tả cách tăng giá trị Stripe_cache_size cho RAID đó và cách tính giá trị phù hợp cho Stripe_cache_size.

Tôi đã tăng mức khai thác lên 16384 và tốc độ đồng bộ hóa hiện tại của tôi trên RAID5 mới trong / Proc / mdstat đã tăng từ mức 71065K / giây lên 143690K / giây (gấp đôi!) Đó là một tin tốt. Tôi cũng thấy sự gia tăng phù hợp và dự kiến ​​trong việc sử dụng RAM tuy nhiên tôi không thể tìm thấy bất kỳ tài liệu nào về cài đặt này làm gì và cách thức hoạt động.

Nó dường như là một bộ đệm của một số loại cho RAID tồn tại trong RAM. Đó là tất cả những gì tôi có thể nói từ tên của nó và các hiệu ứng nhìn thấy bằng cách thay đổi nó. Có tài liệu "Linux" chính thức nào cho cài đặt này và mô tả về nó không?

Câu trả lời:


6

theo hiểu biết của tôi, stipe_cache_size là số lượng các mục sọc trong bộ đệm sọc. Các mục nhập sọc khác nhau tùy theo hệ thống nhưng chủ yếu được kiểm soát bởi kích thước trang (mặc định là 4096 byte trên hệ thống linux) ( https://github.com/torvalds/linux/blob/master/drivers/md/ston5.c # L73 , tệp này có tất cả logic của bộ đệm sọc nếu bạn muốn tìm hiểu sâu hơn) vì vậy trong RAID5 4 đĩa, một sọc_cache_size 32768 sẽ tiêu tốn của bạn 512MB RAM. theo như tôi biết thì nó chỉ ảnh hưởng đến raid5.

Dưới đây là 2 tài liệu tham khảo: - https://github.com/torvalds/linux/blob/master/Documentation/md.txt#L603 - https://ston.wiki.kernel.org/index.php/Performance#Some_probols_solve_for_benchmarking


1
Số lượng mục của những gì, câu trả lời của bạn là một chút mơ hồ? :)
jwbensley

Tôi cho rằng nó cũng áp dụng cho RAID6, phải
MrCalvin

Bạn có nghĩa là 32768 sẽ tốn 512kB RAM?
jrwren
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.