Boot teljesítmény javítása Ubuntun

Az Ubuntu Developer Week negyedik napján Scott James Remnant a boot teljesítmény javításáról tartott előadást. A témának különös aktualitást ad, hogy a következő Ubuntu kiadás egyik legjobban várt fejlesztése éppen ezen a területen várható. Bár a Developer Week elsősorban azokhoz szól, akik szeretnének részt venni aktívan az Ubuntu fejlesztésében, azonban az előadáson elhangzottak a téma iránt érdeklődő felhasználók számára is érdekesek lehetnek.

Scott előadását azzal kezdte, hogy a boot időnek többféle értelmezése is létezik: a disztribúciók fejlesztői sokáig úgy gondolkodtak, hogy a bootolás addig tart, amíg meg nem jelenik a bejelentkező képernyő. Ezért arra törekedtek, hogy amit lehet, áttoljanak a bejelentkezés utánra. Ezzel azonban maga a bejelentkezés lassult le, ráadásul a tapasztalat azt mutatja, hogy a felhasználók addig nem szívesen nyúlnak a géphez, amíg az láthatóan elfoglalt. Ennek kialakulásában egyébként vélhetően az is szerepet játszott, hogy a Windowsban van egy nagyon csúnya hiba, hogy töltés közben hajlamos rácsukni a felhasználóra a start menüt. Így a Windowsról áttért felhasználók (akik a többséget alkotják) úgy szocializálódtak, hogy addig nem nyúlnak az egérhez, amíg a gép tölt.

Az Ubuntu fejlesztők jelenleg arra törekednek, hogy egy átlagos bootolás ne tartson tovább 30 másodpercnél: értelmezésük szerint ez a boot loader (tipikusan a GRUB) elindulásától a munkaasztal megjelenéséig tartó időt jelenti. A fő nehézséget ebben maguk a merevlemezek jelentik: a tapasztalatok azt mutatják, hogy ezek teljesítménye befolyásolja leginkább a boot időt. Vagyis egy nagy asztali konfiguráció tipikusan nem a core 2 quad processzor, vagy a sportos kék ledek miatt bootol gyorsabban mint egy notebook, hanem az asztali gépekben lévő nagyobb teljesítményű merevlemezek miatt.

Vagyis ha a boot teljesítményt javítani szeretnénk, két dolgot tehetünk ezzel kapcsolatban: csökkentjük a lemezről betöltendő adatok mennyiségét, és hatékonyabban használjuk a lemezt. Így azzal is gyorsulás érhető el, ha sok kis fájl helyett egy tömörítettet olvasunk be, és a memóriában csomagoljuk ki. A statisztikák azt mutatják, hogy a CPU bootolás alatt arányosan sokkal kevésbé terhelt, mint a merevlemez, így ezzel sokkal hatékonyabban használhatók ki a gép erőforrásai.

Másképp is lehet javítani a bootolás hatékonyságát. Jó példa erre az, amit a Ubuntu fejlesztők megváltoztattak a Debianhoz képest: korábban az elérhető kernel modulokról minden bootoláskor új adatbázist generáltak. Ez sok lemezműveletet, a processzortól pedig némi munkát igényelt minden egyes induláskor. Most már viszont csak új kernel, vagy új modul csomag telepítésekor generálja újra ezt az adatbázist azt apt, mégpedig telepítés közben.

Ha esetleg szeretnénk látni, hogy mit csinál a gépünk bootolás során, és mivel telik el az idő, telepíthetünk a tárolókból egy bootchart nevű alkalmazást, ami látványos diagramokat képes rajzolni az egész folyamatról. Itt láthatjuk, hogy mikor milyen folyamat indult el, mik futottak párhuzamosan, hogyan alakult eközben a processzor és a merevlemez terhelése. A program telepítéséhez csak annyit kell tennünk, hogy kiadjuk terminálban a sudo apt-get install bootchart parancsot. Ezek az adatok nagyon hasznosak lehetnek, ha szeretnénk felgyorsítani a gép indulását.

Scott szerint alapvetően kétfajta megközelítés létezik a boot idő csökkentésére: az egyik az, hogy nézzük meg, mit csinálunk most, és kezdjünk ebből faragni, ahol lehet. A másik pedig, hogy kezdjük el nulláról felépíteni, és nézzük meg, hogyan lehet ezt a leghatékonyabban a csinálni. Ez utóbbinál meghatározzák, hogy mondjuk 15 másodpercet szánnak a felhasználói felületre, és 15 másodpercet az alapokra. Ez utóbbin belül 5 másodpercet a kernelre, 5 másodpercet az alap dolgokra és 5 másodpercet a szolgáltatásokra. Ezzel a megközelítéssel jobb végeredmény érhető el, azonban az első mellett szól, hogy ha esetleg nem járnak teljes sikerrel, akkor is ki lehet adni a disztribúciót. Éppen ezért jelenleg azt az utat követik, hogy megnézik, hol lehet reszelgetni a jelenlegi metóduson. Scott szerint azonban nincs okunk az aggodalomra, mert a rendszerben még jelentős tartalékok vannak, így ezzel a módszerrel is rengeteget lehet javítani.

Címkék: ,

A cikkhez nem lehet hozzászólni.