Kai beveik prieš metus dariausi NAS, kartu pasidariau ir kelis FS benchmarkus. Dabar juos aptikęs pagalvojau kad būtų labai naudinga pakartoti – palyginti, kiek pasistūmėjo developinamų sistemų našumas…
Testai buvo atlikti arba su atskiru disku (aligned – nors tada su Advanced Format buvo ką veikti), arba su RAID5 masyvu (žemiau pateikta lentelė – RAID5) iš 5x WD Green serijos diskų. Žemiau pateikta lentelė – iš RAID5 masyvo (MD + LVM). Prieš kiekvieną testą – priverstinis sync’as, taip pat – įsitikinama, kad RAID’as yra pilnai susync’intas…..
Naudojau iozone (keičiasi matuojamas bloko dydis, priklausomai nuo testo): iozone -s300m -j 16 -r4k -r512k -r 4096k -i 0 -i 1 -i 2 -i 5 -i 8 -f /mnt/test/iozone.tmp -U /mnt/test
ReiserFS3
noatime |
ReiserFS3
noatime, notail |
ext4,
created with extents, mounted with ‘noatime’ |
ext4,
created with extents, mounted with ‘noatime’ (run2) |
BTRFS,
noatime |
BTRFS,
noatime,nodatasum, nodatacow,noacl |
|
Write | ||||||
4k | 99738 | 103121 | 113193 | 121446 | 98561 | 118036 |
512k | 92972 | 108739 | 114122 | 109555 | 106877 | 119445 |
4096k | 104672 | 94003 | 118900 | 113319 | 121980 | 115757 |
Read | ||||||
4k | 97811 | 97467 | 112666 | 116975 | 29040 | 91773 |
512k | 62883 | 101031 | 77743 | 116956 | 84419 | 90599 |
4096k | 98189 | 110781 | 81008 | 116983 | 53419 | 93355 |
Random Read | ||||||
4k | 832 | 835 | 845 | 849 | 725 | 845 |
512k | 29321 | 31512 | 36170 | 34795 | 15297 | 22246 |
4096k | 52659 | 55253 | 74076 | 61874 | 30600 | 42548 |
Random Write | ||||||
4k | 4073 | 4061 | 2361 | 2314 | 21761 | 1457 |
512k | 78812 | 82143 | 112980 | 113969 | 95791 | 120782 |
4096k | 71833 | 72514 | 97920 | 97447 | 106617 | 114495 |
Ką gi, kadangi namų NAS dažniausiai yra dirbama su sequential duomenimis – tai labiausiai aktualu didelių blokų read performance. Bent jau taip maniau tada…. Dabar daryčiau kitaip, bet apie tai – vėliau.
Sudėjus viską į vietas, grafiškai (beje, LibreOffice sucks su grafikais, kažkoks nesuvokiamas GUI), gaunam tokį 4MB blokų performance:
Turint omenyje:
- visiškai “žalią” BTRFS (kernel panic testų metu, istorijos IRC (freenode, #btrfs) apie to meto release stabilumą, taip pat kartais pamirštamą sync’ą arba nesuprantamus rezultatus (žr. BTRFS read su mažu bloko dydžiu)
- neypatingai džiuginantį ext4 performansą su mažais bloko dydžiais (ir čia nepaminėta – spartų performanso kritimą, turint labai daug failų – o tokių katalogų aš turiu)
…vistik nusprendžiau likti prie to, ką jau patikrinau savo kailiu, aukojant kažkokį miglotą performance pliusą.
Iš kitos pusės, kadangi ta NAS dėžė 24×7 seedina torrentus (o kartais ir leechina), tai random read/write performansas su mažu bloko dydžiu (čia turėtų būt dar vienas kabliukas – kaip failinės sistemos su fiksuotais blokais prisitaikys prie diskų su AF) yra pakankamai aktualus. Turiu mintį – kai tik ZFS užaugs iki naudojamo lygio Linux’e – darysiu wipe ir būsiu “šiuolaikiškas” ;-)
Kartu bus įdomu ir palyginti, kiek ext4 bei BTRFS “paaugo” per metus/pusantrų. Progresas gi nestovi vietoje ;-)