Molnár Ingo: Moduláris ütemező core és Completely Fair Scheduler

Címkék

Hosszú, több mint 100 választ tartalmazó szálat generált az LKML-en a Red Hat-os Molnár Ingo "Modular Scheduler Core and Completely Fair Scheduler [CFS]" patchset-jének bejelentése. A projekt nem más, mint a Linux kernel jelenlegi taszk ütemezőjének teljes átírása. A projekt célja az, hogy az elmúlt években felhalmozódott, új szolgáltatások beépítésére vonakozó kéréseket megvalósítsa, illetve a vanilla kernel ütemezőjének ezen időszakban felfedett hiányosságait - mint desktop, mind szerver terhelésekre vonatkozóan - orvosolja.

Az új ütemező több újdonsággal is szolgál: például bemutatkozik a "Scheduling Classes", a sched_fair.c megvalósítja a "teljesen korrekt ütemezőt" (Completely Fair Scheduler - CFS), stb.

Az utóbbi ütemezési megoldás Con Kolivas korábbi ötletein alapul. A CFS nanosec-es finomságot használ. Érdekessége, hogy egyetlen központi finomhangolható paramétere van, amely a "/proc/sys/kernel/sched_granularity_ns"-en keresztül állítható . Itt állíthatjuk az ütemező karakterisztikáját, amely lehet inkább desktop igényeknek megfelelő (alacsony latency), vagy inkább szerver jellegű terhelésekre hangolt (jó kötegelt (batch) feldolgozás). Alapértelmezés szerint desktop igényekre van hangolva a CFS.

Bővebb infók a bejelentésben.

Hozzászólások

Overhead? Arról nem írnak sehol. (Illetve van overhead uS-ban, de az nem mond semmit a proci ismerete nélkül.)

Aztán később valaki azt írja, hogy O(log(n))-es az ütemezés időigénye, holott (ha jól tudom), a mostani ütemező O(1)-es (azaz nem függ az időigény a taszkok számától). Persze konkrét számokat tekintve (pl. 1000 taszknál) lehet jobb egy O(log(n)), mint az O(1), de egyelőre nem találtam több információt.

Nekem az a legnagyobb bajom, hogy hiába adom meg a prioritást, az csak a CPUra vonatkozik, az IOra semmi hatással nincs.

errol eszembe jutott egy kerdes, azt hogyan lehet linux/bsd alatt legegyszerubben elerni, hogy valami csak akkor kapjon a netbol ha eppen nem kell masnak, szoval alacsony prioritassal? tehat ha valamit letoltok, akkor az csak a maradek savszelesseget kapja

valahogyan igy tolt le a windows update is, ha jol tudom

--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.

igen egyik felhasznalasa a letoltes lenne, de ami hasznosabb, az az, hogy ha a routeremre akarok rakni egy kis webservert, akkor ne vegye el elolem a naftat

--
The Internet has evolved from smart people in front of dumb terminals to dumb people in front of smart terminals.