Co zawdzięczamy EXT4?

Nowa linuksowa wunderwaffe wycelowana w desktopy, staje się czymś powszechnym – wszędzie widzimy masową migrację dystrybucji na system plików EXT4. Nowe Ubuntu (Jaunty Jackalope 9.04) które na masową skalę zastąpi na naszych komputerach ext3 nowym ext4, od jakiegoś czasu jest już dostępne. I skutek zamiany systemu plików jest widoczny, nawet okiem laika.

Ale co, poza inną nazwą, tak naprawdę dał nam EXT4?

Wszystkie zmiany jak zawsze sprowadzają się do jednego – aby było szybciej i sprawniej. Etatowego użytkownika nie interesują takie terminy jak poprawiające wydajność ekstenty, dynamicznie optymalizowane rozmieszczenie danych na dysku (allocate-on-flush), usprawnia obsługa księgowania (sumy kontrole) i parę innych. Co więcej, jego takie dociekania nad naturą powyższych, kompletnie nie obchodzą – jego komputer ma działać szybciej, sprawniej i ma mieć kolorowy pulpit. Natomiast testy lubimy My (określona grupa określonego kręgu społecznego). W przypadku wspomnianego wcześniej Ubuntu 9.04 warunek prędkości został spełniony – system uruchamia się sporo szybciej niż we wcześniejszych wersjach. Czy jest to jednak wynik sprawniejszego systemu plików, czy może zmieniły się skrypty startowe i ich wydajność?

Mój Jaunty którego testuję od wersji RC, natchnął mnie do sprawdzenia różnicy w wydajności pomiędzy ext3 a ext4 na moim dopieszczony Debianie. Dla partycji na tym samym dysku (jedna partycja ext3, druga ext4), zapuściłem w prostacki sposób Bonnie++ ($# bonnie++ -s 4128). A wyniki są takie:

EXT3


Size
4128M
------Sequential Output------
-Per Chr- --Block-- -Rewrite-
K/sec %CP K/sec %CP K/sec %CP
34740..71.35551..10.16804...3


--Sequential Input- --Random-
-Per Chr- --Block-- --Seeks--
K/sec %CP K/sec %CP /sec %CP
36828..83.37393...3.176,8..0

EXT4


------Sequential Output------
-Per Chr- --Block-- -Rewrite-
K/sec %CP K/sec %CP K/sec %CP
51493..96.56371..12.23641...4


--Sequential Input- --Random-
-Per Chr- --Block-- --Seeks--
K/sec %CP K/sec %CP /sec %CP
55680..96.57802...5.192,0..0

Jak się już tak człowiek wczyta w te cyferki, liczby i symbole (to nie moja wina, że to tak wygląda, Bonnie++ tak podaje wyniki), to nasuwają się oczywiste wnioski i konkluzje (dla uproszczenia tylko dla operacji na blokach):

– ext4 jest szybszy od ext3 – zarówno przy zapisywaniu (56371 K/sec vs 35551 K/sec) i odczytywaniu danych (57802 K/sec vs 37393 K/sec),

– ext4 jest szybszy od ext3 podczas nadpisywania plików (23641 K/sec vs 16804 K/sec),

– ext4 bardziej obciąża procesor (zapis – 12% vs 10%, odczyt 5% vs 3%).

Cóż można więcej rzec. Przy najbliższej sposobności muszę przeformatować swoją partycję / na nowy system plików. Podobne rozwiązanie polecam osobom aktualizującym swoje Ubuntu do nowszej wersji – optymalnie będzie uruchomić instalację z płytki, a partycję / potraktować jak wspomniałem. Oczywiście, tylko w przypadku, gdy ważne dane i /home mamy na osobnej partycji.

Można wcześniejszą partycję ext3 zamontować jako ext4, ale nie da to wielkiego przyrostu w wydajności – właśnie z powodu specyficznych i właściwych tylko ext4 rozwiązaniom.

Rzecz jasna, powyższy test jest taki bardziej ‘na oko’. Na Phoronixie i innych serwisach, testów i benchmarków EXT4 wykonano już całe multum, jednak nikt chyba nie zwrócił uwagę na śladowe, ale jednak większe, zużycie CPU. Ale przecież mamy coraz lepsze procesory, a różnica w obciążeniu jest akceptowalna, w stosunku do wzrostu wydajności zapisu i odczytu.

Testu dokonano na Debianie z kernelem 2.6.29, dysku WD (IDE), dwóch partycjach zamontowanych z parametrem ‘noatime’.
 

5 komentarzy

  1. cóż… do odważnych świat należy. ja już straciłem dane z partycji stojącej na ext4. poczekam, aż będzie stabilniejszy.

  2. Ja od dawna jadę ze / na JFS, postanowiłem spróbować ext4 – odczuwalnych różnic przy ładowaniu systemu słownie ZERO…

  3. Witam. troche po czasie sie tu wypiowiem:D ale zaciekawilem sie wlasnie EXT4. w tej chwili wlasnie instaluje debiana na ext4 . System jest instalowany na szybkim notebooku wiec pewnie odczuje roznice;) pozdrawiam

  4. Również poczekam aż ext4 będzie stabilniejszy. Instalowałem Ubuntu 9.04 na HP pavilion (czytaj pavulon – ponieważ tak się zagotował, ze odlutowała się karta graficzna – taka mała wada fabryczna (like red ring xbox), a płyta przy podniesieniu lapa zaczynała świrować i wyskakiwały błędy na dysku – nawet po zmianie dysku na inny) – winda umarla po 1 dniu, Ubu 9.04 działał niecały miesiąc ale Ubuntu 8.10 dzialal nawet po “zawiasie” stabilnie – lapa się pozbyłem (po przylutowaniu grafiki) – oddając go komuś kto się takim czymś cieszy. :o) zatem ext3 rządzi.

  5. Ext4 jest decydowanie wydajniejszy od ext3. Mam teraz debiana i widzę aż kilkunasto sekundowe przyśpieszenie uruchamiania systemu. Ogólna wydajność dysku też się znacząco poprawiła więc nie ma co czekać, tylko przechodzić 🙂

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Post comment

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.