PRESENTAZIONE | SPECIFICHE | BILANCIAMENTO DEL CARICO | TOLLERANZA AI GUASTI |ANALISI DELLE PRESTAZIONI | METODO DI CALCOLO | CONCLUSIONI


DFG - Test 1

Per effettuare questo test si sono utilizzate macchine il più possibile simili in prestazioni (sparcstation5 per il test effettuato sul sistema operativo Solaris e PentiumII 233Mhz per il test effettuato sul sistema operativo NT) e si è impostato ad un valore comune il parametro "carico di default". Inoltre, durante il test, sulle macchine non erano attivi altri programmi "pesanti" oltre a DFG. In questo modo si è cercato di eliminare possibili fattori esterni che potessero influenzare il risultato del test e quindi le valutazioni che da questo si possono ricavare. I valori riportati nelle tabelle sono la media di una serie di rilevazioni tutte effettuate nelle stesse condizioni.

Tabella 1

Osservazioni:

Si è effettuato il calcolo di una serie di immagini diverse non solo nel loro costo (stimato), ma anche per le loro caratteristiche intrinseche, che ne determinano la reale complessità di calcolo. Ad esempio, le immagini 3 e 4 hanno lo stesso valore di costo, ma in realtà i punti dell'immagine 4 richiedono un numero di iterazioni mediamente molto superiore per essere calcolati (ved. Tabella 1).
Tra queste caratteristiche è importante segnalare il grado di "simmetria" della complessità dell'immagine, che determina l'efficienza con cui il carico ad essa relativo viene ripartito tra gli slaves disponibili. Infatti, il tempo richiesto da un calcolo è dato dallo slave che impiega più tempo per calcolare la sua porzione di immagine. Per questo motivo, un'errata ripartizione del carico fa sì che molti slaves terminino il loro lavoro molto prima di altri, determinando così un drastico calo nelle prestazioni globali del sistema.

Questa considerazione mette in risalto il fatto che per un buon uso delle risorse è necessario impegnare in continuazione tutti gli slaves disponibili. Solo in questo modo è possibile ottenere prestazioni significativamente superiori a quelle ottenibili con un sistema concentrato. In altre parole, il programma DFG non è adatto a calcolare singole immagini, ma a svolgere il calcolo di un numero elevato di immagini contemporaneamente.

Esaminando i dati, si nota subito il fatto che DFG, quando c'è un solo slave a disposizione, è sempre più lento di MandC. Questo è ovviamente causato dall'overhead dovuto alla comunicazione tra le entità che costituiscono DFG.

All'aumentare del numero di slaves disponibili, il tempo di calcolo generalmente diminuisce. Questo però non accade sempre. Si consideri l'immagine 5: il tempo necessario per calcolarla è di soli 25.8sec con due slaves a disposizione, mentre è di 36.3sec con tre slaves. Questo è dovuto al fatto che questa immagine è fortemente asimmetrica per quanto riguarda la complessità di calcolo. La si può infatti suddividere in tre fasce orizzontali, delle quali quella centrale è estremamente più complessa da calcolare delle altre.
Per questo motivo, quando si utilizzano tre slaves, due di questi terminano molto in fretta il proprio compito, mentre il rimanente impiega molto più tempo. Se invece si utilizzano due slaves l'utilizzo delle risorse è molto migliore (i due slaves terminano di calcolare quasi contemporaneamente).

Nota: E' possibile introdurre ottimizzazioni nella funzione di calcolo dell'insieme di Mandelbrot in modo da ridurre al minimo le disomogeneità alle quali si è accennato. La versione attuale di DFG non adotta alcun tipo di ottimizzazione. L'introduzione di questo tipo di ottimizzazione migliorerebbe notevolmente le prestazioni globali del sistema, sia perchè ridurrebbe il numero di iterazioni necessarie a riconoscere i punti appartenenti all'insieme di Mandelbrot, sia perchè permetterebbe una più equa ripartizione del carico tra gli slaves.

Un'altra osservazione importante che si può fare osservando i dati è che il sistema fornisce prestazioni migliori nel calcolo di immagini che hanno un costo molto elevato, perchè nel calcolo di tali immagini l'overhead introdotto dalla comunicazione costituisce una percentuale molto piccola del tempo di risposta totale. Infatti, il miglioramento ottenuto nel calcolo dell' immagine più costosa in assoluto passando da uno a cinque slaves è del 74.9% (immagine 4), mentre i miglioramenti ottenuti per le altre immagini vanno dal 47.2% al 58.3%.

Il grafico seguente riporta i dati della Tabella 1:

Grafico 1

Di seguito sono riportati i tempi ottenuti sul sistema operativo Windows NT. In queste prove, il miglioramento delle prestazioni dovuto all'utilizzo di un numero di slaves maggiore è più marcato. Passando da uno a 4 slaves, il miglioramento va dal 54.9% (per l'immagine1, che essendo poco costosa risente maggiormente dell'overhead della comunicazione) al 76.3% (per le immagini 4 e 5, che sono le più costose e quindi risentono meno dell'overhead della comunicazione).
 
 

Tabella 2

Grafico 2


Le caratteristiche delle immagini calcolate sono le seguenti:

IMMAGINE 1
Tipo Mandelbrot
Larghezza 320
Altezza 240
Max Iter  800
x1 -0.1752
y1 1.04617
x2 -0.14204
y2 1.0213
Palette Palette1: burning Mandelbrot
Costo stimato 61440000
 

IMMAGINE 2
Tipo Mandelbrot
Larghezza 800
Altezza 600
Max Iter  400
x1 -0.7459947
y1 0.13231586
x2 -0.7417978
y2 0.12916816
Palette Palette1: burning Mandelbrot
Costo stimato 192000000
 

IMMAGINE 3
Tipo Mandelbrot
Larghezza 640
Altezza 480
Max Iter  1000
x1 -0.781408
y1 -0.1325861
x2 -0.7739277
y2 -0.138196
Palette Palette1: burning Mandelbrot
Costo stimato 307200000
 

IMMAGINE 4
Tipo Mandelbrot
Larghezza 640
Altezza 480
Max Iter  1000
x1 -0.7405319028
y1 -0.183407642
x2 -0.7405218018
y2 -0.183415426
Palette Palette1: burning Mandelbrot
Costo stimato 307200000
 

IMMAGINE 5
Tipo Mandelbrot
Larghezza 800
Altezza 600
Max Iter  1000
x1 -2.5
y1 1.5
x2 1.5
y2 -1.5
Palette Palette1: burning Mandelbrot
Costo stimato 480000000
 

MIX di tre immagini
Immagine 1 320 x 240 x 2000
Immagine 4 320 x 240 x 4000
Immagine 5  320 x 240 x 1000
 


PRESENTAZIONE | SPECIFICHE | BILANCIAMENTO DEL CARICO | TOLLERANZA AI GUASTI | ANALISI DELLE PRESTAZIONI | METODO DI CALCOLO | CONCLUSIONI