Vivek arra volt kíváncsi, hogy ésszerű-e még alapértelmezettként a CFQ-t szállítani. A CFQ általában jól teljesít lassú, rotációs médiák (pl. SATA eszközök) esetén. Viszont gyakran alulteljesít gyorsabb tárolóeszközökkel (pl. RAID tömbök, SSD-k, virtualizált lemezek).
Vivek tudja, hogy nincs egy jó válasz minden tárolótípusra és terhelésre, de szerinte ésszerűbb lenne a SATA kivételével minden eszköz esetén alapértelmezettként a deadline I/O ütemezőt beállítani.
Jens Axboe szerint értelmesebb lenne minden egymagában álló (vagyis nem RAID-be szervezett) rotációs eszköznél a CFQ-t használni, illetve minden RAID és nem rotációs elven működő eszköznél deadline I/O ütemezőt használni alapértelmezettként.
A thread itt.
- A hozzászóláshoz be kell jelentkezni
- 6702 megtekintés
Hozzászólások
Mikor SSD-re váltottam, az elsők közt állítottam át a cfq-t deadline-ra. Mérni nem nagyon mértem, de már csak használat közben is érezni véltem, hogy a deadline előnyösebb.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Sok helyen a noop-ot favorizálják, bár azok 2010-es dokumentumok. Jelenleg van-e a noop és a deadline között jelentős különbség?
- A hozzászóláshoz be kell jelentkezni
A noop-al nagyon be lehet fürdeni, mert az alapvető request merge-öt sem végzi el. Én senkinek nem javasolnám általános használatra.
- A hozzászóláshoz be kell jelentkezni
Köszönöm az infót! Meggyőztél, átálltam.
- A hozzászóláshoz be kell jelentkezni
SSD-n nincs értelme a request merge-nek, ott szerintem a noop a legjobb. Ahogy pl. a Qlogic kártyákon át FC-n elért gyors storage-ok esetében is meg ilyenek.
- A hozzászóláshoz be kell jelentkezni
Hülyeséget írtam, de nem azért, mert ne lenne értelme a request merge-nek, hanem mert a noop is elvégzi azt.
Szóval a noopnak tényleg lehet létjogosultsága SSD-n és FC-n, de nem tudnék valódi előnyt mondani a deadline-al szemben. Ellenben semmit nem garantál, ami egy kézzel fogható hátránya interaktív környezetben.
- A hozzászóláshoz be kell jelentkezni
Beállítom én is az ssd-mre, hátha lesz valami pozitív hatása. Egy próbát megér.
- A hozzászóláshoz be kell jelentkezni
A SATA RAID az meg elsősorban RAID-nek számít ilyen szempontból?
"Jegyezze fel a vádhoz - utasította Metcalf őrnagy a tizedest, aki tudott gyorsírni. - Tiszteletlenül beszélt a feljebbvalójával, amikor nem pofázott közbe."
- A hozzászóláshoz be kell jelentkezni
Szerintem általános szabályt nehéz lenne felállítani, mivel vannak erősebb (hardveres) SATA RAID-ek, meg vannak szoftveres (aka. fake|host) RAID megoldások, ahol a RAID funkciókat a host gép CPU-ja végzi. Legjobb szerintem tesztelni. Szerencsére az IO ütemezőt futási időben át lehet váltani, így a tesztelés nagyon egyszerű.
--
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
A "független, szabad, közösségi fejlesztésű Linux operációs rendszer" megint arra megy, amerre a Redhat üzleti érdeke megkívánja? :) Pontosan azokon a médiumokon teljesítene jobban a deadline, amiket a Redhat ügyfelei jellemzően használnak vállalati szegmensben. Még a virtualizációt is megemlíti.
Vagy én olvasok rosszul a sorok között? :))
--
Java apps are nothing more than sophisticated XML-to-exception converters.
- A hozzászóláshoz be kell jelentkezni
a redhat sajat patchelt kernelt fordit. abba azt tett eddig is amit akart.
--
Live free, or I f'ing kill you.
- A hozzászóláshoz be kell jelentkezni
Igen, de szeretné, ha a többiek is tesztelnék a deadline-t éles rendszeren. ;)
- A hozzászóláshoz be kell jelentkezni
A mainline kernelről beszélünk, a levelet az LKML-re írta, nem a Retek-féle patkolt kernelről.
--
Java apps are nothing more than sophisticated XML-to-exception converters.
- A hozzászóláshoz be kell jelentkezni
nekem volt egy időszak amikor nagy fileokat másoltam sokat vinyák és partíciók között és CFQ alatt érezhetően csökkent bizonyos dolgokban a rendszer reszponzivitása. deadline teljesen jó volt ilyen szempontból.
- A hozzászóláshoz be kell jelentkezni
Egyszer nagyon régen meguntam, hogy másoláskor az egész gép interaktív felhasználásra használhatatlan lett (különösen X alatt). Valahol rátaláltam erre a deadline scheduler beállításra. Egycsapásra elmúlt minden nyűgöm. Azóta az _összes_ általam menedzselt Linuxon ez van a kernel defaultnak megjelölve, és tisztább, szárazabb érzés... Nem érdekel, hogy SATA-ra talán jobb lenne egyesek szerint a CFQ. Szerintem nem volt sose jobb.
- A hozzászóláshoz be kell jelentkezni
Igazabol a legigazibb az lenne, ha lenne annyi IQ a rendszerben, hogy kepes legyen automatikusan a neki optimalisabbat valasztani, akar dinamikusan is.
----------------
Lvl86 Troll - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Szerintem ennek akkor volna értelme, ha volna olyan eset, ahol érdekel, hogy nem a deadline a legjobb. De nincs ilyen eset.
A CFQ egy esetben tud - elméletben - jobb lenni: ha szerveren használod, nincs interaktív tevékenység, gyenge/kevés diszked van, és masszívan túl van terhelve i/o-ban a géped. Ekkor "picit" jobb lesz, bár igazából szerintem teljesen mindegy, hiszen amúgy is gyenge i/o-ban a géped, az a kicsi elérhető többlet nem oszt, nem szoroz. Na pont ez az az eset, ahol igazából nem érdekel, hogy nem az optimálist kapom, ha meg véletlenül érdekelne, akkor meg beállítom a CFQ-t.
- A hozzászóláshoz be kell jelentkezni
Nincs olyan, hogy minden esetre alkalmas. Nagyon jo pelda erre a Java meg a .NET JIT-tere, ahol sok esetben tobbet artunk, ha elore optimalizalunk.
Az, meg, hogy atlag desktopon az user allitgasson (sot, process utemezo eseten forditgasson) kernelt, az nonsense 2012-ben. (Iden mar nincs linux desktop meg smartphone eve?)
Manapsag ott kellene tartani, hogy a szamitogepnek illene alkalmazkodnia dinamikusan a felhasznalo szokasaihoz, nem a felhasznalonak kellene alapveto rendszerkomponensek konfigolasaval szoszolnie.
----------------
Lvl86 Troll - Think Wishfully™
- A hozzászóláshoz be kell jelentkezni
Hmm, ezen gondolkodtam egy kicsit. Az ütemezőket nem vagyok benne biztos, hogy érdemes elbonyolítani. Mondjuk egy próbát lehet, megérne.
- A hozzászóláshoz be kell jelentkezni
+1
- A hozzászóláshoz be kell jelentkezni
Jól értem, hogy ez a hír gyakorlatilag csak azokat érinti, akik maguknak pörgetik a kernelt, és – mivel eddig nem piszkálták – lényeges számukra, ha megváltozik az alapértelmezett ütemező?
int getRandomNumber() { return 4; } // ← aláírás
//szabályos kockadobással választva. garantáltan véletlenszerű. xkcd
- A hozzászóláshoz be kell jelentkezni
nem
- A hozzászóláshoz be kell jelentkezni
Hanem?
int getRandomNumber() { return 4; } // ← aláírás
//szabályos kockadobással választva. garantáltan véletlenszerű. xkcd
- A hozzászóláshoz be kell jelentkezni
Mivel futásidőben választható, hogy milyet akarsz használni, fordításkor csak annyit dönt a disztribútor, hogy melyik legyen alapértelmezett, nem azt, hogy melyiket kell használnod :)
- A hozzászóláshoz be kell jelentkezni
Lazán kapcsolódik: amíg a diszket kcryptd-n keresztül érjük el (titkosított partíció vagy LVM PV), addig tök mindegy. A kcryptd összemossa az összes IO kérést egyetlen folyamba, és az alatta lévő blokkütemező egyetlen forrásból (= kcryptd-ből) érkezőként lát mindent. Vagyis lényegtelen, milyen ütemezőt választunk, olyan, mint ha nem is lenne.
Sajnos ez egy borzasztóan idegesítő hiba. Példa: tegyük fel, hogy 10 percenként egyszer fut egy recollindex, vagy akármilyen program, amely szétszórva ír egy csomó kicsi blokkot, majd a végén kitol egy nagy fsync()-et. Ha ez ugyanazon a fizikai diszken (nem filesystem-en!) történik, mint ahol interaktív munkát végzünk, és mindkét jellegű hozzáférés átmegy a kcryptd-n valamilyen rétegben, akkor az interaktív munkánkban 6-13 másodperces fagyásokat is tapasztalhatunk. Lényegében amíg az fsync() fut az X processz kedvéért, addig az összes többi processz is fennakad, amelyik lapozásra kényszerül. Ez nyilván abszurd.
Ha jól tudom, dolgoznak a fiúk, hogy a kcryptd továbbpasszolja az eredeti kontextust az ütemezőnek (vagy valami más trükkön), de még csak kísérleti fázisban van.
- A hozzászóláshoz be kell jelentkezni
akkor azert ilyen troger lassu ez a linugz :)
--
NetBSD - Simplicity is prerequisite for reliability
- A hozzászóláshoz be kell jelentkezni
But BSD is dying!!!1eleven!
--
Java apps are nothing more than sophisticated XML-to-exception converters.
- A hozzászóláshoz be kell jelentkezni
3.3-as kernelen valódi pid-eket látok btrace-el.
- A hozzászóláshoz be kell jelentkezni
Baze... Most megvilágosodtam. Hiába ssd, libeatmydata stb... ilyen egyszerű a probléma oka... Remélem lesz rá megoldás hamarosan. (vagy már van, mert mostanában egész fasza 3.3.1)
- A hozzászóláshoz be kell jelentkezni
Az ugye mindenkinek megvan, hogy az ionice csak CFQ-val mukodik?
- A hozzászóláshoz be kell jelentkezni