Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoAugusto Bonetti Modificato 10 anni fa
1
POLITECNICO DI MILANO Politecnico di Milano A.A. 2005/06 MECCANISMI DI SINCRONIZZAZIONE PER SISTEMI MULTIPROCESSORE BASATI SUL DISPOSITIVO D740 Candidato: Davide Rossignoli Matricola: 661483 Relatore: Prof. Anna Antola Correlatore: Ing. Marco Domenico Santambrogio
2
2 Sommario Obiettivi Descrizione dellarchitettura D740 e JTST La funzione di cross-correlazione Sincronismo tra i processori con semafori e buffer Sincronismo mediante coda ciclica Test su scheda JTST Conclusioni
3
3 Applicazione per la cross-correlazione mediante semafori (con problemi di prestazioni globali) + Meccanismo di sincronizzazione a coda ciclica Applicazione per il calcolo della cross-correlazione con coda ciclica Miglioramento prestazioni del sistema globale Obiettivi
4
4 Chip a due processori: - ARM7TDMI RISC - mAgic DSP Parallelismo e sincronizzazione (mediante Interrupt e PARM) Elevata capacità di calcolo (giga- operazioni/s) Diopsis 740
5
5 Permette lo scambio di dati tra i due processori 2 modalità di funzionamento: SYSTEM MODE : ARM accede a tutta la memoria mAgic RUN MODE : ARM accede alla PARM In System Mode il mAgic è in attesa! Memoria Condivisa PARM
6
6 Utilizzata per stabilire una relazione tra due segnali Localizzazione epicentri di eventi sismici Punto di max-somiglianza La cross-correlazione
7
7 ARM riempie il buffer 1 mAgic preleva dal buffer 2 ARM riempie il buffer 2 mAgic preleva dal buffer 1 Sincronizzazione con semafori Vantaggi Semplice implementazione Svantaggi mAgic sempre in attesa dellARM Basse prestazioni globali Buffer dinamici non risolvono il problema non solo un problema di architettura disponibile
8
8 2 array contenenti n segnali ciascuno, un array per i risultati e due indici per i processori Posizione del segnale nellarray : Indice nella coda % Lunghezza Coda Segnale in posizione 2 nellarray S1 Segnale in posizione 2 nellarray S2 Risultato tra i due segnali Es: Lunghezza Coda: 4 Indice di un processore: 18 Posizione nella coda: 2 Coda ciclica e cross-correlazione (1)
9
9 ARMmAgic mAgic non è rimasto troppo indietro, ARM non sovrascrive dati da processare ARM ha già caricato nuovi dati Per stampare solo dati corretti (quindi già elaborati) Coda ciclica e cross-correlazione (2)
10
10 HyperTerminal ® Prova su scheda JTST (1)
11
11 Creazione soluzione con utilizzo di un solo processore Creazione soluzione su PC librerie a disposizione per le prestazioni simulazione mediante threads del parallelismo Risultati ottenuti: ARM-only (Scheda) 1 min 10 s (100 iter.) ARM-mAgic (Scheda) 1 min (100 iter.) PROBLEMA: - alcune librerie C non implementate in MADE - mancanza di supporto allanalisi delle prestazioni Singolo processore (PC) 43 s Doppio processore (PC) 30 s Prova su scheda JTST (2)
12
12 Problemi di prestazioni riscontrati a causa di : accesso lento della memoria condivisa PARM limitatezza della memoria PARM (512 words x 2) Miglioramenti possibili : utilizzo del buffer ADDA System MODE con mappaggio in ARM avendo a disposizione più memoria PARM Considerazioni Simulazione su PC guadagno del 17% nonostante loverhead per i threads Soluzione a singolo processore utilizzando solo ARM non si passa dalla memoria PARM Confronto con la soluzione precedente codice mAgic era ottimizzato a livello ASM buffer dinamici non risolvevano il problema il metodo di sincronizzazione non vincola più le prestazioni migliore gestione della memoria condivisa
13
13 Possibilità di analizzare le prestazioni nellambiente di sviluppo MADE Ottimizzazioni sorgenti mAgic con codice ASM Caricamento segnali in ADDA e gestione sincronismo mediante SYSTEM MODE Possibili sviluppi futuri
14
14 Fine Presentazione Grazie per lattenzione!
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.