10.07.2015 Views

Scarica il pdf con la mia tesi - Parallel Programming Laboratory

Scarica il pdf con la mia tesi - Parallel Programming Laboratory

Scarica il pdf con la mia tesi - Parallel Programming Laboratory

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

20 Strategie di parallelizzazione Cap. 3dei domini spaziali di pertinenza di ciascun processore dinamicamente. In Figura 3.5si può vedere come si procede allo spostamento di un taglio (in partico<strong>la</strong>re di quelloche coinvolge tutti i processori).VecchioTaglioNuovoTaglioPrimaDopoFigura 3.5: Riposizionamento del taglio principale all’interno del<strong>la</strong> distribuzione diparticelleInoltre, cosa fondamentale, poiché pochi processori si troveranno ad avere le particellepiù pesanti computazionalmente, è necessario assegnare a questi un numeroinferiore di particelle rispetto agli altri. Infatti nonostante <strong>il</strong> calcolo sia distribuito inremoto, <strong>il</strong> processore che detiene una particel<strong>la</strong> richiederà un maggior numero di calcolidi tipo particel<strong>la</strong>-particel<strong>la</strong> dovendo aprire maggiormente i nodi, un processorelontano si troverà in una situazione di dover aprire meno i nodi in quanto distantedalle particelle avanzate e potrà usufruire dell’approssimazione data dall’algoritmo diBarnes-Hut.Punto fondamentale è che tutto lo spazio è coperto esattamente dai processori (comesi può vedere nelle Figure 3.2 e 3.5). Risulta anche che lungo <strong>il</strong> taglio principaletutti i processori devono adeguarsi ad avere un bordo comune, anche questo è fatto perpoter gestire <strong>il</strong> tutto in maniera efficiente.Per ridistribuire le particelle si <strong>la</strong>vora in modo ricorsivo: lungo un taglio si possonoindividuare due gruppi di processori i quali (in <strong>con</strong>dizioni ottimali) dovrebberoimpiegare un uguale tempo di calcolo. Ognuno dei due gruppi calco<strong>la</strong> quanto tempo haut<strong>il</strong>izzato nelle computazioni complessivamente (somma dei tempi sui singoli processoridel gruppo) tolte tutte le comunicazioni e le attese, poi <strong>il</strong> gruppo che ha impiegatopiù tempo invia delle particelle al gruppo che ha <strong>la</strong>vorato meno.Questo semplice algoritmo permette di ridurre lo sb<strong>il</strong>anciamento in quanto tendere

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

Saved successfully!

Ooh no, something went wrong!