În depozitul care dezvoltă modificări pentru Btrfs pentru viitoarele ramuri ale nucleului Linux, a fost acceptat un set de patch-uri cu implementarea politicii de balansare ciclică a operațiunilor de citire în RAID1, utilizând algoritmul „Round-robin”. Pentru a activa distribuția operațiunilor de citire într-un ciclu rotativ, în „/sys/fs/btrfs//read_policy” trebuie să se seteze valoarea „round-robin:[min_contiguous_read]”, în care parametrul opțional „min_contiguous_read” definește dimensiunea minimă a cererilor care urmează să fie balansate între oglinzi (în mod implicit, valoarea este de 256 KiB).
Inițial, balansarea încărcăturii RAID1 în Btrfs era efectuată pe baza PID-ului procesului care solicita I/O. Această schemă funcționa bine în sistemele în care încărcătura era generată de multe procese diferite, însă în cazul unei sarcini unimodale nu permitea obținerea celor mai bune performanțe. De exemplu, în testele efectuate, activarea politicii „round-robin” a redus timpul de execuție al procesului de defragmentare de la 18 la 8.8 secunde.
A fost adăugat în plus un modificator care implementează parametrul „devid:” în „/sys/fs/btrfs//read_policy”. Acest parametru dezactivează balansarea și impune efectuarea operațiunilor de citire doar de pe discul specificat.
Sursa: opennet.ro
