La fase di I/O verso l'hardisk rappresenta un collo di bottiglia nelle comunicazione interne di un computer, questo perché il reperimento delle informazioni non avviene in modo diretto, come ad esempio verso la RAM, ma deve seguire tre fasi:
Quindi si è scelto di implementare il software in modo che la fase di lettura sia unica per minimizzare il tempo delle fasi di Seek e Latency, copiando temporaneamente tutte le informazioni nella RAM che offre dei tempi di accesso notevolmente inferiori rispetto l'hardisk.
Il parsing degli elementi della matrice che rappresenta l'immagine, dal punto di vista procedurale, ha una complessità computazionale quadratica, ovvero, nel contesto di una elaborazione su di un computer monoprocessore il tempo di elaborazione aumenterebbe in modo quadratico con l'aumentare della dimensione dei dati da elaborare. Potendo disporre di computer multiprocessore per la manipolazione di immagini si è quindi deciso di sfruttare la possibilità di suddividere l'elaborazione totale in sotto elaborazioni simultanee ed indipendenti, affidandole ognuna ad un processore e solo alla fine del computo ricongiungere i risultati parziali ottenuti per ricostituire il risultato finale. Questa metodica permette di ridurre il tempo di elaborazione di un fattore proporzionale al numero di CPU di cui il computer dispone.
Mario Cavicchi 2007-07-25