Ubuntu “Desktop” verzió GUI válaszidejének javítása nagy méretű fájl mozgatás idejére

A következő bejegyzés előzménye a HUP.HU portál egy becses blogger bejegyzésének hatására született: http://hup.hu/node/77227

ERŐSEN HALADÓ LINUX ISMERETEK MEGKÍVÁNÓ TÉMA!

Felhasználása kezdő korosztálynak nem ajánlott!

Mikor nagy méretű fájlokat másolunk, talán más is észrevette -akik a standatd “generic” kernelt használják- hogy bizony a GUI programok válaszideje jócskán megnő. Az ihlető blogbejegyzést szeretném itt kivonatolni és megosztani tapasztalataimat a problémával kapcsolatban.

Mikor I/O adatmozgás történik, a Desktop változatok ütemezője egy új un. CFG eljárást használ, melyet állítólag a GUI-s változatokhoz készítettek. A Server verziók ezzel ellentétben a DEADLINE verziót használják. Ez a változat ha jól olvastam pont a CFG elött volt alapértelmezett a kernelekben.

Az én PC-im mind SATA winyót használnak.  Kb 16 dvd másolásával teszteltem csak érzésre a DEADLINE ütemezőt és ezekre a winyókra kifejezetten megfelelt.

Kipróbáltam USB pendrive-okra a NOOP ütemezőt és tényleg a legoptimálisabb gyorsaságot lehet vele elérni a memória típusú tárolókon.

Szeretném kivonatolni a blog technikai infóját.

Melyik ütemezőt használja a kérdéses lemez: (ahol sda a lemez azonosítója)

cat /sys/block/sda/queue/scheduler

Erre egy ilyen válasz érkezik, ha Desktop verziót használunk:

noop anticipatory deadline [cfq]

A DEADLINE változatra átállítani így lehet az sda tárolót:

echo deadline > /sys/block/sda/queue/scheduler

Véglegesíteni a beállítást a GRUB1 menu.lst file-jában tudjuk. Valaki a bootolható kerneljének adja paraméterül, viszont én egy alapértelmezett beállításként vettem fel, így minden későbbi kernel frissítéskor is megmarad a beállítás: (közvetlen a kernel lista elött lévő sorokba szúrom be)

elevator=deadline

Majd a beállítást élesítjük:

sudo update-grub

Ehhez a témához valaki írta, hogy “preemtive kernel”-t használ, ami az Ubuntu disztróban az “-rt” végű kernelek, viszont ez a kernel a hagyományos, asztali alkalmazásokhoz egyáltalán nem javasolt. Ezt a kernelt speciális célra, beágyazott és egyéb multimédiás, realtime környezethez készítették. Asztali felhasználása nem javallott.

Magam is kíváncsi vagyok kinek milyen tárolóknál, mely ütemezők hajtják legjobban a szekeret! :)

4 hozzászólás


  1. Elnézést kell kérnem, de nem teszteltem csak most a GRUB1-es alapértelmezett paraméterezést és sajnálattal tapasztaltam, hogy azt nem veszi figyelembe. Most kipróbálom az eredeti blogger javaslatát és keresek valami frissítésbiztos megoldást is ami up2date mükszik.


  2. charlie, a GRUB1-esnél a bootolható kerneleknél -ahogy az eredeti blog szerző is írja- az általunk legtöbbször bootolt kernelek paramétereként adtam át. Így minden winyó megkapta. Engem érdekelne még mindíg, hogy mi van azokkal az OnDemand mountolt USB-kkel amik NOOP beállítással érik el a legjobb eregményt.
    Talán kéne írni egy scriptet ami mountoláskor megnézi mijen device került fel és annak megfelelően beállítja az ütemezőjét is.
    Tud valaki ebben segíteni? Legalább annyit, hogy milyen vonalon érdemes elindulni a keresésben?


  3. Grub2-ben, 9.10-es Ubuntun a /etc/defaults/grub filet szerkesszük meg:

    ezt a sort egészítsük ki:
    GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”

    erre:
    GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash elevator=deadline”

    Mentés, majd kiadjuk a sudo update-grub2 parancsot és máris élesítve van a beállítás bootoláshoz.

    Az USB-k megkülönböztetésére még nem jöttem rá.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöljük.