# [kernel::cpu scheduler] ktory najbardziej CI odpowiada ?

## fallow

bywaly wczesniej pokrewne tematy , ale wszystko sie zmienia i mysle ze dobrze by bylo zrobic male rozeznanie . sczegolnie po tym ze ostatnio wiele sie dzieje na tym polu  :Smile: 

----------

## nelchael

Staircase  :Smile: 

(i reszta latek z -ck na dokladke  :Very Happy:  )

----------

## fallow

takze jestem zwolennikiem staircase . od gdzies 5.0 w gore bylo juz b.dobrze . w ogole tryby ISO,RANGE,BATCH rox . ale gdzies od 8.3 do 8.8 nie spisuje sie u mnie staircase tak dobrze jak wczesniej. podczas kompilacji czesc softu sie tnie co wczesniej nie mialo miejsca. na ckml ktos sie troche skarzyl  , ale poki poprawki sa pod mm2 a nie without mm.u Ciebie Nelchael wszystko ok ? .   z racji niskiej uzywalnosci mm2 i mm3 . postanowilem przeczekac zawirowania z 269-rcX i staircase > 8.3 na nick`s schedulerze. SPA i bazujace na nim nie maja problemow jakos , tylko SPA_SC odziedziczyl czesc z ostatnich wersji staira. heh , jakos jestem oporny przed powrotem do 2.6.8

tak czy siak w ogole mnie najbardziej pasuje schedy jednej tablicy prior w na czele ze stairem . nick`s by przecezkac burze hehe . btw. hydra i zapchod tez sa niezle z mozliwosciami zmiany polityki at runtime ... 

pozdro:)

----------

## akub

sorry ze sie wtrynie w watek, ale co to takiego ten sheduler bo nierzucilo mi sie w ekran jak szukalem na googlach, albo chociaz linka  :Smile: 

pozdrawiam, jakub

----------

## Poe

Glownie Staircase ze stajni Con'a uzywam ich praktycznie w kazdym kernelku. ewentaulnie SPA_Hydra. tych uzywam najczesciej. aczkolwiek przez dluzszy czas bylem zrazony do staircasa, gdyz zamiast przyspieszac, to zwalnial kompa (nadawal dla niektorych procsow zbyt wysokie priorytety i jak one dzialaly, to normalne dzialanie na kompie stawało sie niemozliwe, ale w pozniejszych wersjach juz bylo lepiej) aktualnie jade na Staircase_8.0 (poki co nie umiem wykminic nic dobrego z 2.6.9-rc2, wiec nowszych schedow z tej serii nie testowalem).

a co do Twojego pytania, Akub. Otoz scheda trzeba dodac do kernelka (spatchowac). nie trzeba go w adnych opcjach juz potem uruchamiac. polega to na tym, ze jest to cos w rodzaju programu sterujacego i zarzadzajacy priorytetami poszczegolnych procesow. dzieki nadaniu odpowienich priorytetow mozna uzysklac lepsza wydajnosc.

PS

ten felerny stair to byla chyba jakas wczesna "siódemka" (~7.2-7.4)

----------

## nelchael

 *fallow wrote:*   

> Ciebie Nelchael wszystko ok ?

 

Mam 2.6.8.1-ck8 i ... nie widze duzej roznicy pomiedzy 2.6.7-sc7.E a tym w -ck8. Czyli: wszystko ok  :Smile: 

----------

## fallow

w tej wydajnosci chodzi w znaczacej mierze takze oprocz nadania odpowiednich priorytetow ( bo to mozna sobie zrobic majac np. verynice z portage i na "zwykym" O)1 cpu schedulerze ) o zmniejszenie opoznienia schedulera, co daje szybszy czas rekacji. W tych wszytkich modyfikacjach przywiazuje sie do tego znaczna wage. Jednak sam Ingo Molnar tworca O)1 dla 2.6 takze pracuje nad owymi modyfiakcjami nieograniczajac sie do samego cpu schedulera http://people.redhat.com/mingo/voluntary-preempt/.

cpu schedulery oparte na staircasie oferuja tez tryb ISO ktroy jest czyms w stylu "prawdziwego real mode" w ktorym moga byc odpalane procesy za pomoca schedtool`a ( takze w portage ) 

pozdro  :Smile: 

----------

## akub

dzieki za opdowiedz, ale chyba narazie nie widze potrzeby posiadania takiego czegos, ale dlacalkowitej pewnosci, jelsi dobrze rozumiem:

(w uproszczeniu) tki cpu sheduler nadaje odpowiedni priorytet (nice) do kadego programu? jesli tak to skad on wie jakiemu programowi dac wyzszy albo nizszy, musze to gdzies ustawic, prawda?

i jeszcze odnosnie tego standardowego 0)1 "standardowy" czyli ja tez go mam?

pozdrawiam, jakub

----------

## Poe

 *akub wrote:*   

> [...] jeszcze odnosnie tego standardowego 0)1 "standardowy" czyli ja tez go mam?
> 
> pozdrawiam, jakub

 

Ano jakis tam masz  :Wink: 

PS

Mam prosbe, powiedzcie mi czy wreszcie mam dobre kodowanie - ąśćżźłóń, widzicie krzaki czy polskie literki?

----------

## arach`666

2.6.8.1-ck5 sprawuje sie u mnie b. dobrze

ps

POE: chyba masz dobrze ustawione

----------

## nelchael

 *Poe wrote:*   

> PS
> 
> Mam prosbe, powiedzcie mi czy wreszcie mam dobre kodowanie - ąśćżźłóń, widzicie krzaki czy polskie literki?

 

Ta  :Smile:  Juz dziala dobrze  :Smile: 

----------

## fallow

 *akub wrote:*   

> dzieki za opdowiedz, ale chyba narazie nie widze potrzeby posiadania takiego czegos, ale dlacalkowitej pewnosci, jelsi dobrze rozumiem:
> 
> (w uproszczeniu) tki cpu sheduler nadaje odpowiedni priorytet (nice) do kadego programu? jesli tak to skad on wie jakiemu programowi dac wyzszy albo nizszy, musze to gdzies ustawic, prawda?
> 
> i jeszcze odnosnie tego standardowego 0)1 "standardowy" czyli ja tez go mam?
> ...

 

jesli korzystasz z lini 2.6 masz standardowy O)1 Ingo Molnara.

jak nadac odpowiedni priorytet i na jakich podstawach to obliczyc , jaki przydzielic bonus to jedna z podstaw aby stworzyc inne schedulery.

te algorytmy nie sa proste i pomyslow takze jest wiele.

mozna to obliczac na bardzo rozne sposoby , wzgledem czasu istnienia procesu , wykorzystywanych zasobow..etc.

zasadniczy podzial to na schedulery 2 tablic priorytetow i jednej.

2 tablicowe to O)1 i nick`s , a 1 to staircase i gama SPA.

jesli chcesz samemu ustawic sobie jaki proces ma miec jaki priorytet po uruchomieniu , uzyj verynice z portage  :Smile: 

pozdro  :Smile: 

----------

## mkay

zaglosowalem na standardowy, bo dziala on po prostu dobrze;> staircase dzialal tak, ze lepiej nie mowic (zreszta niektorzy wiedza;>), a innych nie probowalem (tzn - kiedys krotko uzywalem patchy wolk'a, ale nie pamietam co tam bylo)

----------

## fallow

noo , standardowy takze robi sie coraz lepszy , ostatnio sprobowalem i sie zdziwilem , jeszcze w polaczeniu z volunt_preempt Ingo jest coraz lepiej  :Smile: 

pozdro  :Smile: 

----------

## galimedes

Niewiem czy jest znaczna różnica w zarządzaniu procesami i tak zawsze procesy będą dzielona na IO i ograniczone procesorem. Więc z tego prosty morał zawsze będą faworyzowane procesy IO więc zabardzo nie mam pomysłu jaka może być różnica pomięczy standardowym z innymi. Jeśli mógł by mi ktoś powiedzieć jakim kosztem procesy dostają kwanty czasu był bym wdzięczny. Jak na razie standardowy scheduler jest dla mnie zrozumiały i przy tym zostanę, choc nie miałem jeszcze okazji próbowac innych.  :Rolling Eyes: 

----------

## fallow

Do schedulowania subsystemu io sa btw odzielne io schedulery :  anticipatory (std ) , deadline , no-op , cfq i cfq v2 oparty na obsludze write-barriers.

IMHO nie chodzi tutaj bezposrednio o to aby dac procesom wiecej czasu.

Schedulera oparte na jednej tablicy priorytetow jak Staircase czy rodzina SPA maja za zadanie znacznie uproscic sam kod schedulera rezygnujac z std 2 tablic. Taka modyfikacja jest "czysty" SPA ktore inne mechanizmy ma zblizone do std O)1 ale znacznie go upraszcza. Glownym zadaniem jest takze zmniejszenie opoznien reakcjiu samego schedulera by moglby on , co za tym idzie kernel stac sie bardziej responsywny. mozna sobie to ladnie zobaczyc na przykladzie testow np. nick`s schedulera http://www.kerneltrap.org/~npiggin/schedlat3/   , a samemu zmierzyc swoj np. tym http://www.kerneltrap.org/~npiggin/schedlat3/sched2.c , albo jesli ma sie SPA mozna przez caly czas dokonywac pomiaru GUI`em Petera William`sa. www.sf.net/projects/cpuse. W pewnym sensie czasem reguluje mechanizm przydzielania odpowiedniego priorytetu i bonusowania go w cpu schedulerze . mozna tez recznie odpalac procesy w roznych trybach za pomoca narzedzia "schedtool" z portage.

mysle ze o wiele wiecej powie CI na ten temat Con Kolivas hehe  :Smile: , albo Nick Piggin . na CKML mozna spokojnie zadawac takie pytania i mozna sie dowiedziec naprawde ciekawych rzeczy . 

pozdro  :Smile: 

----------

## galimedes

 *fallow wrote:*   

> ...
> 
> mysle ze o wiele wiecej powie CI na ten temat Con Kolivas hehe , albo Nick Piggin . na CKML mozna spokojnie zadawac takie pytania i mozna sie dowiedziec naprawde ciekawych rzeczy . 
> 
> pozdro 

 

Bardziej niż schedulerem interesowałem się ufs ale chyba muszę nadrobić straty i potestować   :Wink:   może coś się znajdzie co mnie zainteresuje i będzie co zmieniać   :Twisted Evil: 

----------

## Prompty

swoja droga mozna napisac wlasny schedualer 

na systemach operacyjnych co po niektorzy pisali  dla minixa  :Smile: 

niedys eksperymentowalem z nick's ale bylo to na tyle krotko ze zaznaczylem O)1 ;]

----------

## fallow

Xhpihux ( xx-sources) zrobil swoja hybdryde nicksa z jednotablicowymi priorytetow  :Very Happy:  - XXSched

ciekawe polaczenie

http://sourceforge.net/project/showfiles.php?group_id=113424&package_id=123353

ja za malo wiem aby sie brac za cos takiego .... z czasem  :Smile: 

pozdro  :Smile: 

----------

## _troll_

 *Prompty wrote:*   

> swoja droga mozna napisac wlasny schedualer 
> 
> na systemach operacyjnych co po niektorzy pisali  dla minixa 

 

elka??

Pozdrawiam,

Przemek

----------

## nelchael

 *fallow wrote:*   

> mysle ze o wiele wiecej powie CI na ten temat Con Kolivas hehe , albo Nick Piggin . na CKML mozna spokojnie zadawac takie pytania i mozna sie dowiedziec naprawde ciekawych rzeczy . 

 

Samo czytanie CK daje duzo wiedzy na temat Staircase'a (a ostatnio i tego scheda Nicka, jak mu tam... no... wiecie  :Wink:  )

----------

## fallow

mozna jeszcze dodac LKML i kerneltrap z takich najwazniejszych ze wskazaniem of course na ten pierwszy .

pozdro  :Smile: 

----------

## nelchael

 *fallow wrote:*   

> mozna jeszcze dodac LKML i kerneltrap z takich najwazniejszych ze wskazaniem of course na ten pierwszy .

 

Tyle, ze ilosc postow na LKML jest... ogromna i ciezko czytac nawet wiekszosc.

----------

## fallow

 *nelchael wrote:*   

>  *fallow wrote:*   mozna jeszcze dodac LKML i kerneltrap z takich najwazniejszych ze wskazaniem of course na ten pierwszy . 
> 
> Tyle, ze ilosc postow na LKML jest... ogromna i ciezko czytac nawet wiekszosc.

 

ja nie czytam wszystkich , nawet polowy  :Razz:   :Smile:  czytam tylko to co "wpadnie mi w oko "  :Smile:  ale przyznam ze jak opusci sie dzien , dwa to potem juz mozna sie pogubic... 

pozdro  :Smile: 

----------

## nelchael

 *fallow wrote:*   

> ja nie czytam wszystkich , nawet polowy   czytam tylko to co "wpadnie mi w oko "  ale przyznam ze jak opusci sie dzien , dwa to potem juz mozna sie pogubic... 

 

300-400 postow dziennie to za duzo, zeby mi sie chcialo to nawet przegladac  :Wink: 

PS. nie mowie juz o tym, co jest jak 2-3 dni nie odbieram poczty  :Surprised: 

----------

## fallow

hehe , milo ze Con wrocil do wersji 8.2 staira , imho mnie najlepiej pracuje sie na 8.0 , w 8.9 takze nie widze bledow z 8.3 , ale poki co 269-rc3 z 8.9 nie nadaje sie do uzytku imho  :Sad: . kos testowal 8.9 ? 

pozdro  :Smile: 

----------

## Poe

 *fallow wrote:*   

> [..] kos testowal 8.9 ? 
> 
> pozdro 

 

tja, mozna to tak nazwac - "testowalem", wywala sie przy kompilacji (8.9 z rc3 -> rc3-mm1), sporo rejectow jest do tego, naewt po wywaleniu zaphoda, w tym jeden reject, z ktorym ja mam kilka problemow, bo nie wiem/nie mam gdzie wpasowac kilka linijek... ale coz.. poczekamy, moze cos sie zmieni.. stable 269 (sadze ze to kwetstia ~1-1,5tygodnia), lub staira na mm'a (choc skoro do tej pory go nie ma, to raczej go nie bedzie)

----------

