13.07.2015 Views

Matematici discrete pentru CS - Departamentul Automatica ...

Matematici discrete pentru CS - Departamentul Automatica ...

Matematici discrete pentru CS - Departamentul Automatica ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

petrecere. Câti trebuie sǎ invitati <strong>pentru</strong> a avea o sansǎ bunǎ (sǎ spunem de celputin 50%) ca doi dintre ei sǎ aibǎ aceeasi zi de nastere? Este exact problemahashing-coliziune, cu n = 365 (numǎrul zilelor unui an – de fapt mai sunt si anibisecti si în plus mai si presupunem cǎ zilele de nastere sunt independente siuniform distribuite pe durata anului ceea ce nu este foarte exact; numǎrul denasteri fluctueazǎ pe durata anului cu unele vârfuri, de pildǎ la nouǎ luni de lasǎrbǎtorile de iarnǎ). Din tabelul de mai devreme, se poate vedea cǎ 23 deinvitati sunt suficienti (de ce?). Dacǎ doriti sǎ mergeti mai la sigur si sǎ aveti oprobabilitate mai înaltǎ, de pildǎ 95%, trebuie sǎ invitati 47 de persoane (a severifica acest numǎr).Aplicatia 2: Echilibrarea încǎrcǎriiUna din cele mai presante probleme de ordin practic în calculul paralel esteaceea a distribuirii încǎrcǎrii între procesoare. Este o problemǎ uriasǎ, încǎnerezolvatǎ în cazul general. Aici este examinat un scenariu extrem de simplucare este fundamental si stabileste o linie de bazǎ fatǎ de care pot fi judecatemetodele mai sofisticate.Sǎ presupunem cǎ avem m joburi identice si n procesoare identice. Sarcinanoastrǎ este a atribui joburile pe procesoare astfel încât nici un procesor sǎ nufie foarte încǎrcat. Desigur, existǎ aici o solutie optimǎ: se împart joburile atâtde egal pe cât se poate, astfel încât fiecare procesor sǎ primeascǎ fie ⎡m / n⎤, fie⎣m / n⎦joburi. Cu toate acestea, solutia aceasta reclamǎ foarte mult controlcentralizat si/sau foarte multǎ comunicare: încǎrcarea trebuie echilibratǎ fieprintr-un planificator central foarte puternic care “vorbeste” tuturorprocesoarelor, fie prin schimb intens de mesaje între joburi si procesoare. Acesttip de operatii este foarte costisitor în cele mai multe sisteme de calculdistribuit. Asadar apare întrebarea: ce se poate face cu putin overhead (saudeloc) în costul planificǎrii si al comunicatiei?Prima ideie la îndemânǎ este… mingi si cutii! Adicǎ, fiecare job selecteazǎsimplu un procesor uniform aleator si independent de toate celelalte si merge laacel procesor. (Trebuie sǎ ne asigurǎm cǎ spatiul probabilistic al acestuiexperiment este acelasi cu cel al problemei mingilor si cutiilor.) Aceastǎschemǎ nu cere vreo comunicare. Cu toate acestea, e de prezumat cǎ metoda nuva atinge în general o echilibrarea optimǎ. Fie X încǎrcarea maximǎ a unuiprocesor în schema aleatoare prezentatǎ. Se observǎ usor cǎ X nu este un numǎrfix: valoarea sa depinde de rezultatul experimentului mingi si cutii (este de fapto variabilǎ aleatoare, lucru care-l vom defini în sectiunea urmǎtoare). Astfel, caproiectanti sau utilizatori ai acestei scheme de echilibrare, care ar fi problemanoastrǎ?Întrebare: Care este acea valoare k <strong>pentru</strong> care Pr[X ≥ k] ≤ 0,5.Dacǎ valoarea k este judicios potrivitǎ, atunci vom avea o probabilitate bunǎ (decel putin 1/2) ca încǎrcarea maximǎ pe oricare dintre procesoare sǎ nudepǎseascǎ acel k. Asta dǎ o idee corectǎ asupra performantei sistemului.143

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!