Upload
others
View
12
Download
0
Embed Size (px)
Citation preview
Úvod Popis problému Metody řešení Aplikace
Dynamické rozvrhování
Hana Rudová
Fakulta informatiky, Masarykova universita
http://www.fi.muni.cz/~hanka
Informatické kolokvium, 9.10.2007
Úvod Popis problému Metody řešení Aplikace
Dynamické rozvrhování (Dynamic scheduling)
1 Úvod2 Popis problému
Statický problémDynamický problémProblém minimálních změn
3 Metody řešeníŘídící pravidlaIterativní dopředné prohledáváníLokální prohledáváníMetoda větví a mezí
4 AplikaceUniversitní rozvrhováníPlánování v prostřední Gridu
Úvod Popis problému Metody řešení Aplikace
Aktuální spolupráce
Skupina na FI a ÚVTPurdue University, USA
Keith MurrayTomáš Müller
MFF UKRoman Barták
University of Nottingham, UKEdmund BurkeJakub Mareček (PhD student)
ISTI CNR, ItálieRanieri Baraglia
Úvod Popis problému Metody řešení Aplikace
Projekty
Běžící projekty2005 - 2011, VZ MŠMT ČRVysoce paralelní a distribuované systémy2007 - 2009, GA ČR, s MFF UKDynamické aspekty rozvrhování2006 - 2008, CoreGRID project, EU NoE
Ukončené projekty2004-2005, Purdue University Project: Timetabling III2002-2003, Purdue University Project: Timetabling II2001-2002, Purdue University Project: Timetabling2001-2003, GA ČR, s MFF UKPokročilé plánování a rozvrhování
Úvod Popis problému Metody řešení Aplikace
Rozvrhování (scheduling)
Rozvrhováníoptimální alokace/přiřazení zdrojů v čase množině úlohomezené množství zdrojůmaximalizace zisku za daných omezení
Zdrojkapacitadostupnost v časerychlost
Úlohanejdřívější startovní časnejpozdější koncový časdoba trvání (ref. zdroj)počet zdrojůalternativní zdroje
Visopt ShopFloor System
Úvod Popis problému Metody řešení Aplikace
Rozvrhování jako problém s omezujícími podmínkami
Problém splňování podmínek (CSP)doménové proměnné, domény, omezení = relace
Řešení CSP(úplné) přiřazení hodnot z domén proměnným tak,aby byla splněna všechna omezení
Objektivní funkce a její optimalizace
Rozvrhování jako CSPdoménové proměnné
pozice úlohy A v čase a prostorualokace času: start(A), p(A), end(A)alokace prostoru: resource(A)
doménytermín dostupnosti a dokončení pro časové proměnnéalternativní zdroje pro zdrojové proměnné
omezení: zdrojové podmínky, relace mezi úlohami, ...objektivní funkce
maximalizace vytížení zdrojů, preference na čas a zdroje, ...
Úvod Popis problému Metody řešení Aplikace
Rozvrhování jako problém s omezujícími podmínkami
Problém splňování podmínek (CSP)doménové proměnné, domény, omezení = relace
Řešení CSP(úplné) přiřazení hodnot z domén proměnným tak,aby byla splněna všechna omezení
Objektivní funkce a její optimalizace
Rozvrhování jako CSPdoménové proměnné
pozice úlohy A v čase a prostorualokace času: start(A), p(A), end(A)alokace prostoru: resource(A)
doménytermín dostupnosti a dokončení pro časové proměnnéalternativní zdroje pro zdrojové proměnné
omezení: zdrojové podmínky, relace mezi úlohami, ...objektivní funkce
maximalizace vytížení zdrojů, preference na čas a zdroje, ...
Úvod Popis problému Metody řešení Aplikace
Dynamické rozvrhování
Změna zadání problému v průběhu jeho řešeníPříklady:
neplánovaný výpadek zdrojenové úlohy se objeví v průběhu výpočtuzkrácení/prodloužení doby trvání úloh
zadání problému rozvrhovac
^
^ ^
reseni
^
zmena problému
^
Úvod Popis problému Metody řešení Aplikace
Dynamické rozvrhování
Změna zadání problému v průběhu jeho řešeníPříklady:
neplánovaný výpadek zdrojenové úlohy se objeví v průběhu výpočtuzkrácení/prodloužení doby trvání úloh
zadání problému rozvrhovac
^
^ ^
reseni
^
zmena problému
^
Úvod Popis problému Metody řešení Aplikace
Dynamický problém splňování podmínek
Dynamický problém splňování je posloupnost {P0, P1, . . . , Pn},kde
každé Pi je CSP daný množinou omezení Ci
C+i je množina přidaných omezení
C−i je množina odebraných omezeníiC−
C
C
i−
i
1
C+i
a platíC−i ⊆ Ci−1
Ci = C+i ∪ Ci−1\C−i
Poznámka:změny domén a proměnných lze zakódovat do omezení
Úvod Popis problému Metody řešení Aplikace
Problém minimálních změn (minimum perturbation problem)
Požadavek: nové řešení se minimálně liší od řešení původníhořešení publikovánozměny nežádoucí vzhledem k uživatelisnaha o minimalizaci lavinového efektu
Příkladyškolní rozvrhpřiřazení letůrozvrhování zdravotních sester
Problém minimálních změn: (P, α, C+, C−, δ)
P je CSP s množinou omezení Cα řešení PC+, C− množiny přidaných a odebraných omezeníδ funkce vzdálenosti určující vzdálenost dvou CSP řešení
Řešení problému minimálních změnCSP řešení β problému s C\C− ∪ C+ s minimální δ(β, α)
Úvod Popis problému Metody řešení Aplikace
Problém minimálních změn (minimum perturbation problem)
Požadavek: nové řešení se minimálně liší od řešení původníhořešení publikovánozměny nežádoucí vzhledem k uživatelisnaha o minimalizaci lavinového efektu
Příkladyškolní rozvrhpřiřazení letůrozvrhování zdravotních sester
Problém minimálních změn: (P, α, C+, C−, δ)
P je CSP s množinou omezení Cα řešení PC+, C− množiny přidaných a odebraných omezeníδ funkce vzdálenosti určující vzdálenost dvou CSP řešení
Řešení problému minimálních změnCSP řešení β problému s C\C− ∪ C+ s minimální δ(β, α)
Úvod Popis problému Metody řešení Aplikace
1 Úvod
2 Popis problémuStatický problémDynamický problémProblém minimálních změn
3 Metody řešeníŘídící pravidlaIterativní dopředné prohledáváníLokální prohledáváníMetoda větví a mezí
4 AplikaceUniversitní rozvrhováníPlánování v prostřední Gridu
Úvod Popis problému Metody řešení Aplikace
Řídící pravidla (dispatching rules)
Řídící pravidlazařazení nové úlohy na zdroj dle pravidlapravidlo =nejdelší úloha/nejmenší termín dokončení/... nejdřívekombinace několika pravidel
Použití1 6 8 93
4
vysoká dynamikapostupně přibývající úlohynejasná doba trvánívýpadky zdrojů
nutnost rychlé odezvynevhodné pro komplexní optimalizaci
problém minimálních změnQoS
Úvod Popis problému Metody řešení Aplikace
Prohledávání stavového prostoru
Triviální enumerace
Řešení CSP: prohledávání + propagace omezení
propagace =odstranění nekonzistentních hodnot z domén proměnných
Úvod Popis problému Metody řešení Aplikace
Prohledávání stavového prostoru
Triviální enumerace
Řešení CSP: prohledávání + propagace omezení
propagace =odstranění nekonzistentních hodnot z domén proměnných
Úvod Popis problému Metody řešení Aplikace
Iterativní dopředné prohledávání (IFS) pro CSP
Konstruktivní metoda s propagací omezeníČástečné konzistentní přiřazení
Standarní dopředný krokvýběr proměnných a jejich přiřazenípokud lze
"Zpětný krok"1 pokud nelze vybrané proměnné přiřadit
bez porušení konzistence2 detekce konfliktních proměnných a zrušení jejich přiřazení3 přiřazení původně vybraných proměnných
Důležitý principvýběr hodnoty proměnnépomocí konfliktní statistiky (paměť počtu konfliktů)
Důsledeknejedná se o stromové procházení prostoruprincip lokálního prohledávání
Úvod Popis problému Metody řešení Aplikace
IFS pro dynamický CSP
CSP: cíl prohledávání1 nalezení přiřazení všech hodnot2 optimalizace objektivní funkce
preferované časové umístění, preferované zdroje, ...
Problém minimálních změn: rozšíření3 minimalizace počtu rozdílných hodnot4 preference výběru původních hodnot
při výběru hodnot sledovánrozdíl v počtu přiřazených původních hodnot
Úvod Popis problému Metody řešení Aplikace
IFS: experimenty
0
2
4
6
8
10
12
14
16
0 10 20 30 40 50 60 70 80 90 100Input perturbations
Add
ition
al p
ertu
rbat
ions
0%
10%
20%
30%
40%
50%
60%
70%
80%
0 10 20 30 40 50 60 70 80 90 100Input perturbations
Add
ition
al p
ertu
rbat
ions
[%]
Úvod Popis problému Metody řešení Aplikace
Lokální prohledávání (Local Search LS)
Lokální změny/opravy úplného nekonzistentního přiřazení
Iniciální přiřazení (triviálně: náhodné)Lokální změna
výměna dvou úloh, přemístění úlohy na jiný zdroj, ...
����
��
globální optimum
lokální optima
x
F(x)
CSP: cíl prohledávání1 nalezení úplného konzistentního přiřazení2 zlepšit hodnotu objektivní funkce
Dynamický CSP: rozšíření3 řešení původního problému jako iniciální přiřazení4 přirozené rozšíření5 nízká časová náročnost
Problém minimálních změn: rozšíření6 minimalizovat počet rozdílných hodnot7 neposkytuje žádné záruky o optimalitě řešení
Úvod Popis problému Metody řešení Aplikace
Lokální prohledávání (Local Search LS)
Lokální změny/opravy úplného nekonzistentního přiřazení
Iniciální přiřazení (triviálně: náhodné)Lokální změna
výměna dvou úloh, přemístění úlohy na jiný zdroj, ...
����
��
globální optimum
lokální optima
x
F(x)
CSP: cíl prohledávání1 nalezení úplného konzistentního přiřazení2 zlepšit hodnotu objektivní funkce
Dynamický CSP: rozšíření3 řešení původního problému jako iniciální přiřazení4 přirozené rozšíření5 nízká časová náročnost
Problém minimálních změn: rozšíření6 minimalizovat počet rozdílných hodnot7 neposkytuje žádné záruky o optimalitě řešení
Úvod Popis problému Metody řešení Aplikace
Metoda větví a mezí (Branch & Bound BB)
Metoda větví a mezístromové prohledávání prostorupro řešení optimalizačního problému s propagacemi omezeníudržována hodnota objektivní funkce dosud nejlepšího řešenípodprostor s horší kvalitou řešení odříznut (neprohledáván)
IFS, LSřeší rozsáhlé problémyneposkytují žádné záruky o optimalitě řešení
BBpro rozsáhlé problémy nepoužitelnélze ji ale použít pro lokální optimalizaci
Úvod Popis problému Metody řešení Aplikace
Metoda větví a mezí (Branch & Bound BB)
Metoda větví a mezístromové prohledávání prostorupro řešení optimalizačního problému s propagacemi omezeníudržována hodnota objektivní funkce dosud nejlepšího řešenípodprostor s horší kvalitou řešení odříznut (neprohledáván)
IFS, LSřeší rozsáhlé problémyneposkytují žádné záruky o optimalitě řešení
BBpro rozsáhlé problémy nepoužitelnélze ji ale použít pro lokální optimalizaci
Úvod Popis problému Metody řešení Aplikace
BB: dynamický CSP
Máme řešení problému se změnami a chceme ho "vylepšit"
Výběr konkrétní proměnné x s nevyhovujícím přiřazenímAplikace BB s maximálně n povolenými změnami
rozumné n je poměrně malérozumná velikost prostoruzáruka optimality v rámci tohoto prostoruřešení mimo tento prostor nevyhovující vzhledem k x
Úvod Popis problému Metody řešení Aplikace
Universitní rozvrhování
Rozvrhování na Purdue UniversityRozsáhlý decentralizovaný problém
2 centrální problémy: velké učebny, počítačové laboratořecca 70 problémů pro jednotlivé administrativní jednotky
Stav projektu2001-2005: 3 projekty mezi MU a Purdue Universityjaro 2005: poprvé použito rozvrhování velkých učebenpodzim 2007: systém poprvé použit pro celou universitu
Proces tvorby rozvrhu1 řešení problému velkých učeben centrálně2 řešení problémů jednotlivých administrativních jednotek3 řešení problému počítačových učeben centrálně4 změny v rozvrhu centrálně
Úvod Popis problému Metody řešení Aplikace
Statické rozvrhovací problémy
Problém velkých učeben800 předmětů x 2 schůzky, 55 místností, cca 28.000 studentůindividuální zápis předmětů studentypreference na čas a místo, vzdálenosti mezi učebnami
Další problémy: řešeny automaticky i přímým vstupem dat
Algoritmus: IFS
Úvod Popis problému Metody řešení Aplikace
Problém minimálních změn
Metody řešeníIFS pro řešení požadavků na změnyBB pro lokální optimalizaci rozvrhu
Úvod Popis problému Metody řešení Aplikace
Úvod Popis problému Metody řešení Aplikace
Plánování v prostředí Gridu
Distribuované heterogenní zdrojeclustery, superpočítače, desktopy, speciální zařízeníautonomie, robustnost
Typy úlohhigh-throughput (parametrické studie), paralelní, distribuované
Plánování na Gridechplánování výpočetních úloh na zdrojeplánování datových přenosů a zpracování dat
Příkladyněkolik/stovky clusterů přes ČR/Evropu(METACentrum/EGEE)několik superpočítačů (Deisa)SETI@Home
Úvod Popis problému Metody řešení Aplikace
Gridové plánování s Alea simulátorem
Problémy s QoS požadavkysyntetické problémy navržené na ISTI CNRheterogenní zdroje (rychlost, paralelní)dynamické problémy
přibývající úlohyznámá doba trvání úlohzdroje beze změn
termíny dokončení úloh, sw licencevyužití zdrojů
Gridový simulátor Alearozšíření simulačního nástroje GridSim (Java)centralizovaný plánovačmodulární systém: různé problémy a algoritmystatické a dynamické plánováníhttp://www.fi.muni.cz/~klusacek/alea
Úvod Popis problému Metody řešení Aplikace
Lokální prohledávání pro dynamické gridové plánování
Řídící pravidlaběžně používaná v teorii i praxipoužíváme pro nalezení iniciálního řešení
Lokální prohledáváníaplikováno na statické problémy - příliš pomaléna dynamické problémy už nepoužito
Cílaplikace lokálního prohledávání na dynamické problémyobecně
paralelní úlohy, QoS, interaktivní úlohy, advance reservation, ...aplikace pokročilých AI/OR algoritmů
Současné výsledkysyntetické problémy s QoS požadavkyzlepšení optimalizačních výsledkůakceptovatelná doba běhu
Úvod Popis problému Metody řešení Aplikace
Simulátor s produkčními plánovacími algoritmy
Simulátor s virtuálními strojipoužití nástroje Magrathea (vývoj CESNET, MU)virtuální stroje umožní přerušení a migraci úloh
Algorimyaktuálně: z produkční PBSPro instalaceplán: implementace vlastních algoritmů v jazyce C
Datové sadyreálná data z METACentra z 2005-2007cca 300 strojůna 1 počítači (16 CPU) simulace 150 virtuálních strojůúlohy typu "sleep"běh ročních dat simulován za 1 den
Úvod Popis problému Metody řešení Aplikace
Motivace
Nyní:48 států243 clusterů44.000 CPUdenně přes100.000 úloh
Příští rok:očekáván 10xnárůst úloh