Comments
Description
Transcript
Architetture hardware
Sistemi Distribuiti Architetture hardware 1 Classificazione di Flynn di un SD (1972) • SISD: Modello di Von Newmann, singolo flusso di istruzione eseguito da un’unica CPU. Il parallelismo, se c’è, si ottiene con p più core e con tecniche di accelerazione del ciclo. • SIMD: Esecuzione in parallelo su un insieme di dati. Array processor (Ogni processore esegue la stessa istruzione su propri dati) • MIMD: CPU distinte eseguono differenti programmi su flussi di dati distinti. Sistemi distribuiti veri e propri. 2 1 Sistemi distribuiti: Architetture hardware Multiprocessori Multicomputer Sistemi tightly coupled (strettamente accoppiati) Sistemi distribuiti Sistemi loosely coupled (lascamente accoppiati) 3 Multiprocessori: organizzazione della memoria La memoria comune può essere organizzata in modi diversi, e di conseguenza avere tempi di accesso uniformi (per ogni CPU e ogni parola di memoria) - UMA, oppure tempi di accesso non uniformi -NUMA. • Multiprocessori M lti i UMA • basati su bus (supportano al max 16-32 CPU) Con molte CPU: il Bus diventa il collo di bottiglia Usando le cache si riduce la contesa (ma vi sono problemi di coerenza) Aggiungendo le mem. private, si usa la mem. condivisa solo per strutture dati condivise 4 2 Multiprocessori: Uniform Memory Access • UMA basati su crossbar switch Ad ogni incrocio c’è un interruttore (switch) CPU Memorie Non si devono chiudere due interruttori sulla stessa riga o colonna Connessione tra CPU-110 e Mem-010 5 Multiprocessori: Uniform Memory Access • UMA basati su multistage switching networks Rete OMEGA (n/2 log2 n switch anziché n2) chiuso chiuso aperto conflitto Switch 2x2 dei conflitti anche se la memoria target è diversa Possono verificarsi (es. 001 comunica con 100 e 111 vuole comunicare con 101) 6 3 Multiprocessori: Non Uniform Memory Access U i Unico spazio i di indirizzi: i di i i ciascuna i porzione su una delle memorie locali. L’accesso alla memoria locale è più veloce. Vengono scambiati molti messaggi per mantenere traccia di quale cache contiene un dato blocco. 7 GPGPU (General Purpose GPU) Si sta affermando utilizzo delle GPU per ambiti di elaborazione non grafici (es. architettura della scheda NVIDIA Tesla T10) 8 4 Multicomputer • Insieme di computer ciascuno con propria memoria – Omogeneo • Stessa tecnologia di rete per collegare i singoli computer (spesso tightly-coupled) • Le singole macchine hanno le stesse caratteristiche • La scalabilità dipende dal tipo di interconnessione (a Bus o switched) – Eterogeneo • C Contiene ti computer t indipendenti i di d ti in i generale l diversi fra loro come caratteristiche (tipo di processore, memoria, velocità di connessione) • I computer possono essere interconnessi con reti di tipo diverso (loosely-coupled) 9 Multicomputer di tipo omogeneo 1-9 a) Rete a griglia b) Hypercube 10 5