Ütemezési logikákról

A mai bejegyzésben egy pár sort az ütemezési logikákról fogunk beszélni 🙂 Korábban már írtunk előre és hátra ütemezésről meg ilyesmikről, most arról fogunk beszélni, hogy milyen módon kerülhetnek fel a műveletek a Planning boardra. Erre két fő megközelítés szokott lenni, az algoritmikus és az esemény vezérelt.

Az algoritmikus úgy működik, hogy fogjuk az első rendest (az alábbi videóban a kék), berakjuk az ütemtervbe, aztán a következő rendelést (a videóban a zöld) és berakjuk az első rendelkezésre álló helyre… és így tovább. Látszik, hogy itt a műveletek beillesztése a meglévő “lyukakba” történik, így elég jól ki lehet használni a különböző logikák prioritásait, stb. de mivel komplett rendeléseket kezelünk, a rendelést magát vizsgáljuk, így kevésbé vagyunk tekintettek a későbbi ütemezett műveletekre.

Az esemény vezérelt esetben gyakorlatilag minden esemény (művelet vége, műszak változás, stb.) megvizsgáljuk, hogy mik azok a műveletek (nem teljes rendelések!), amik beütemezhetők bármelyik erőforrásra. Így látványosan tömörebb ütemterv jön létre.

A két módszert eredményét az alábbi ábra hasonlítja össze:comparison

A esemény vezérelt esetben az átlagos átfutási idő rövidebb, de pl. a magasabb prioritású feladatok nem lehet, hogy hosszabb idő alatt futhatnak át (pl. ilyen lehet a fenti ábrán a kék rendelés, ami bár a többi rendelés gyorsabban fut át, a kék pont hosszabb időt igényel).

Az egyes módszerek főbb jellemzői a következők:

Algoritmikus ütemezés:

  • A magasabb prioritású rendelések hamarabb elkészülnek
  • Több ütemezési „menet” kombinálható – multi pass
  • Bármilyen ütemezési kényszer használható

Esemény vezérelt ütemezés:

  • A teljes ütemezési átfutási idő rövidebb
  • Alternatív erőforrások jobb kihasználása
  • Explicit erőforrás kiválasztás API-n keresztül

 

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

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés /  Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés /  Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés /  Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés /  Módosítás )

Kapcsolódás: %s