Macchina di von Neumann. Architetture parallele. Cenni storici

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Macchina di von Neumann. Architetture parallele. Cenni storici"

Transcript

1 Architetture parallele Macchina di von Neumann Modello di calcolo: macchina di von Neumann. Control unit Arithmetic logic unit Input Output Limite alle prestazione ottenibili: un unica operazione in esecuzione una sola parte attiva Ricerca di nuove architetture con più operazioni in esecuzione allo stesso istante. Accumulator (Architettura degli Elaboratori) Architetture parallele 1 / 71 (Architettura degli Elaboratori) Architetture parallele 2 / 71 Cenni storici Molte proposte per architetture parallele: Reti neuronali, Date flow machine, Calcolatori vettoriali, Connection machine, Illiac IV. Scarso successo commerciale. I calcolatori vettoriali usate per supercomputer per il calcolo scientifico. Approcci rivoluzionari, difficili da usare, richiedono nuovi stili di programmazione. (Architettura degli Elaboratori) Architetture parallele 3 / 71 Cenni storici Macchine parallele a larga diffusione: anni 90. ipeline, superscalari Approcci conservativi, mantengo il codice. processore multi-core, sistemi multiprocessore, cluster di calcolatori. Ultime evoluzioni, conseguenze della: legge di Moore, vincoli sui consumi energetici. er sfruttare a piene il parallelismo devo usare algoritmi concorrenti distribuiti. (Architettura degli Elaboratori) Architetture parallele 4 / 71

2 Illustreremo problematiche e aspetti generali del parallelismo; classificazione dei calcolatori paralleli; esempi di calcolatori paralleli, idee architetturali attualmente in uso. Migliorare le prestazioni: Motivazioni per il parallelismo problemi che richiedo molta potenza computazionale: algoritmi di simulazione; il software tende a sfruttare tutte le risorse disponibili. Aumento delle prestazioni mediante: nuove tecnologie (porte logiche più veloci). nuove architetture (computazione più efficiente, maggior parallelismo) (Architettura degli Elaboratori) Architetture parallele 5 / 71 (Architettura degli Elaboratori) Architetture parallele 6 / 71 Altri vantaggi: Motivazioni per il parallelismo tolleranza ai guasti: più unita di calcolo, un guasto non necessariamente blocca il calcolatore, architettura scalabile: posso aumentare le prestazioni aggiungendo nuove unità di calcolo. (Architettura degli Elaboratori) Architetture parallele 7 / 71 arallelismo su un singolo chip ipeline: divisione della (micro-)istruzione in stadi. S1 S2 S3 S4 S5 Instruction fetch unit Instruction decode unit S1: S2: S3: S4: S5: Operand fetch unit (a) Instruction execution unit Time (Architettura degli Elaboratori) Architetture (b) parallele 8 / 71 Write back unit

3 rocessori superscalari Integer pipeline Execute Cache N 1 N 2 Fetch Decode Group N 3 Write Register X 1 X 2 X 3 Floating-point/graphics pipeline iù istruzioni iniziate contemporaneamente restazioni: aumento di un fattore circa dieci arallelismo a livello di istruzione iù istruzioni, di uno stesso processo, eseguite contemporaneamente. Vantaggi: si utilizza codice sequenziale, facile da utilizzare, non è necessario riscrivere il codice. Svantaggi: difficile ottenere un elevato grado di parallelismo. (Architettura degli Elaboratori) Architetture parallele 9 / 71 (Architettura degli Elaboratori) Architetture parallele 10 / 71 Altre tecniche il parallelismo: arallelismo su di un singolo chip rocessori VLIW Very Long Instruction Words On-Chip Multi-threading Single-Chip Multiprocessor Multiprocessori omogenei Multiprocessori eterogeneo (Architettura degli Elaboratori) Architetture parallele 11 / 71 VLIW Very Long Instruction Words Nuovi linguaggi macchina adatti alla computazione parallela. Sfruttano al meglio le tecnologie esistenti. I nuovi linguaggi macchina usano: VLIW Very Long Instruction Words ossia istruzioni molto lunghe, ciascuna composta da una sequenza di istruzioni base. Istruzione base da eseguire in parallelo contemporaneamente. Senza controllare che siano indipendenti tra loro. Sposto il lavoro dal processore al compilatore. (Architettura degli Elaboratori) Architetture parallele 12 / 71

4 TriMedia rocessore sviluppato dalla hilips, per dispositivi embedded di audio-video (DVD player - recorder, camcorder,.... Una singola istruzione è composta da 5-8 sotto-istruzioni: operazioni aritmetiche, load-store, multimediali (vettoriali). Itanium IA-64 Intel, candidato a sostituire l IA-32 (entium, Core). INSTRUCTION 1 INSTRUCTION 2 INSTRUCTION 3 TEMLATE INSTRUCTION 1 INSTRUCTION 2 INSTRUCTION 3 TEMLATE INSTRUCTION 1 INSTRUCTION 2 INSTRUCTION 3 TEMLATE R1 R2 R3 Instructions can be chained together REDICATE REGISTER (Architettura degli Elaboratori) Architetture parallele 13 / 71 iù istruzioni possono essere collegate assieme ed eseguiti contemporaneamente, senza controllare l indipendenza. (Architettura degli Elaboratori) Architetture parallele 14 / 71 Itanium IA-64 Istruzioni condizionate, per evitare le istruzioni di salto. Centinaia di registri, evito: accessi in memoria, dipendenza tra istruzioni. Caricamenti speculativi, anticipo gli accessi in memoria. a meno di page-fault. oco successo commerciale, il mercato ha preferito x86-64 (o AMD 64) scelta conservativa. (Architettura degli Elaboratori) Architetture parallele 15 / 71 Multi-threading ermette di sfruttare meglio le capacità di calcolo dei processori superscalari (con più pipeline). Il processore esegue più thread (processi (con memoria condivisa)) contemporaneamente. Utile nel caso un programma rallenti per: dipendenze tra istruzioni, istruzioni che bloccano, per alcuni cicli di clock l esecuzione (accessi alla memoria principale, cache III livello) (Architettura degli Elaboratori) Architetture parallele 16 / 71

5 Multi-threading uò essere utilizzato in processori con singola pipeline. iù utile in processore superscalari. In determinati istanti il processore commuta da un thread ad un altro. Due tecniche possibili; m. grana fine: si commuta su ogni, numero elevato di commutazione di contesti, si anticipano i possibili blocchi. m. grana grossa: si cerca di eseguire più istruzioni per thread, riduco le commutazioni. (Architettura degli Elaboratori) Architetture parallele 17 / 71 Multi-threading rocessore con una singola pipeline: rocessore superscalare: (Architettura degli Elaboratori) Architetture parallele 18 / 71 Ripartizione risorse Come le risorse del processore vengono ripartite tra i vari thread. Esempi: ogni thread disponi di un suo insieme di registri: risorse condivise: memoria cache risorse partizionate: le pipeline di un processore super-scalare In generale: Ripartizione risorse condivisione ripartita: ogni thread un insieme privato di risorse, condivisione totale, condivisione a soglia; un limite alle risorse acquisibili da un thread. Multi-threading usato su molti processori: Core i7: hyper-threading, 2 thread/core, UltraSparcT3: 16 core, 8 thread/core (Architettura degli Elaboratori) Architetture parallele 19 / 71 (Architettura degli Elaboratori) Architetture parallele 20 / 71

6 Multiprocessori omogenei su un singolo chip Evoluzione del multi-threading, ogni thread un core. Totale separazione delle risorse tra i thread. Solo a memoria cache resta comune. Intel Core i7 La tecnologia attuale permette di inserire più processori su di un chip. (Architettura degli Elaboratori) Architetture parallele 21 / 71 Maggior numero di core: - UltraSparc - Celle (Sony, Toshiba, IBM) (Architettura degli Elaboratori) Architetture parallele 22 / 71 Co-processori arallelismo ottenuto delegando alcuni compiti a processori ausiliari. DMA (Direct Access): controllore DMA complesso, co-processore, si fa carico della gestione I/O. Scheda video: generazione di immagini. Co-processori multimediali: la gestione dei dati audio video gravosa: codifica - decodifica (MEG, M3), elaborazione del segnale. Scheda di rete: controllo degli errori, instradamento dei messaggi. Cripto-processori. (Architettura degli Elaboratori) Architetture parallele 23 / 71 Multipr. eterogenei su singolo chip In un chip: core principale di controllo co-processori specializzati su particolari applicazioni bus di interconnessione, diversi standard alternativi: CoreConnect IBM, AMBA (Advance Microcontroller Bus Architecture) CU ARM, VCI (Virtual Component Interconncect) Chip progettato combinando i progetti delle singole componenti (core). (Architettura degli Elaboratori) Architetture parallele 24 / 71 Dispositivi embedded: SoC (System on Chip),

7 arallelismo su più chip Multiprocessori iù processori su più circuiti integrati. Maggiori aumenti di prestazioni. Necessità di nuovo codice (o di un adatto SO), nuove problematiche. Considereremo due principali approcci: multiprocessori e multicomputer. Sistemi a memoria condivisa. Shared memory CU (a) (b) (Architettura degli Elaboratori) Architetture parallele 25 / 71 (Architettura degli Elaboratori) Architetture parallele 26 / 71 Multiprocessori Le CU dividono lo stesso spazio di memoria. Comunicazione tra CU attraverso l accesso alla memoria condivisa LOAD, STORE. Non è necessario ripartire i dati tra le CU Accesso alla memoria limita le unità di computazione (il grado di parallelismo). Esempi: C con multi-processore, server. Sistemi a memoria distribuita: M M M M M M M M Message- passing interconnection network M M M M rivate memory CU M M M M Multicomputer Message- passing interconnection network CU (a) (b) (Architettura degli Elaboratori) Architetture parallele 27 / 71 (Architettura degli Elaboratori) Architetture parallele 28 / 71

8 Multicomputer Ogni CU ha un proprio spazio di memoria. Comunicazione attraverso scambio di messaggi: SEND, RECEIVE. iù semplice integrare numerose CU, numero unità limitato dalla capacità della rete di interconnessione. iù difficili da programmare. Machine 1 Machine 2 Application Language run-time Operating Hardware Application Language run-time Operating Hardware Simulazione memoria condivisa Machine 1 Machine 2 Application Language run-time Operating Hardware Application Language run-time Operating Hardware Machine 1 Machine 2 Application Language run-time Operating Hardware Application Language run-time Operating Hardware Shared memory Shared memory Shared memory (Architettura degli Elaboratori) Architetture parallele 29 / 71 (a) (b) (c) (Architettura degli Elaboratori) Architetture parallele 30 / 71 Simulazione memoria condivisa 1 Memoria condivisa hardware. 2 Memoria condivisa tramite memoria virtuale, paginazione. Una pagina può trovarsi: nel memoria della CU, in memoria disco, nella memoria locale di un altra CU. DSM (Distributed Shared ). 3 Memoria condivisa tramite librerie. Linda: programmi con tuple condivise. Orca: programmi con oggetti condivisi. (Architettura degli Elaboratori) Architetture parallele 31 / 71 Catalogazione del parallelismo Granularità: complessità delle computazioni eseguite in parallelo (e dei circuiti che le eseguono) Fine: semplici istruzioni, Instruction Level arallelism (IL). Es. processori con pipeline. Grossa (coarse): procedure, rocess Level arallelism (L). Es. processori multi-threading, sistemi multiprocessori. (Architettura degli Elaboratori) Architetture parallele 32 / 71

9 Livello di accoppiamento Forte: unità fortemente connesse, notevole scambio di dati. Es. processori superscalari, multiprocessori. Debole: unità più indipendenti. Es. multicomputer. Scalabilità Una stessa idea architetturale può essere implementata con un numero variabile di unità di calcolo. Un architettura è scalabile se funziona correttamente con molte unita di calcolo. CU Bus (a) (b) (c) (d) (Architettura degli Elaboratori) Architetture parallele 33 / 71 (Architettura degli Elaboratori) Architetture parallele 34 / 71 roblemi: Miglioramento delle prestazioni Le unità di calcolo devono sincronizzarsi tra di loro, overhead di computazione (lavoro extra). Memoria, o altre risorse condivise, creano conflitti tra le unità di calcolo. Conseguenze: difficilmente n unità svolgono un lavoro n volte più velocemente, a volte un aumento delle unità di calcolo porta a un peggioramento delle prestazioni. (Architettura degli Elaboratori) Architetture parallele 35 / 71 restazione Scalabilità dipende sia dall architettura che dai problemi considerati: Speedup Linear speedup N-body problem Skyline matrix inversion 0 (Architettura 0 degli 10 Elaboratori) Architetture 50 parallele / 71 Number of CUs Awari

10 Componenti di un calcolatore parallelo Unità di calcolo. Si usano processori standard. Unità di memoria. Spesso partizionata per poter essere condivisa tra più processori. Rete di interconnessione. Nei multiprocessori collegano processori e moduli di memoria. Nei multicomputer collegano le unità di calcolo. Memoria Composta da diverse unità operanti in parallelo. Struttura complessa, dati replicati: ogni core possiede una cache locale, cache di alto livello comune a più core, memoria principale comune a più processori, eventualmente divisa su più unità. Tempi di accesso ai dati dipendo dalla loro posizione rispetto al processore. er preservare l efficienza, sono ammessi accessi alla memoria fuori ordine: i dati disponibili vengono subito letti o scritti. (Architettura degli Elaboratori) Architetture parallele 37 / 71 (Architettura degli Elaboratori) Architetture parallele 38 / 71 Consistenza della memoria Una memoria con comportamento ideale (esecuzione in ordine, tutti i processore hanno la stessa visione della memoria) è troppo lenta. Ma l ordine di accesso ai dati in memoria non può essere arbitrario, vanno stabilite regole minime per rendere prevedibile il comportamento del codice. Sequenziale: tutte le CU vedono lo stesso ordine. Di processore: preserva: le scritture di ogni CU, la scrittura di ogni indirizzo. Debole: prevede richieste di sincronizzazione, (Architettura Dopo degli Elaboratori) il rilascio: sincronizzazione Architetture parallele locale. 39 / 71 Reti di interconnessione Equivalente sofisticato dei bus. Componente fondamentale: a volte la componente più costosa del calcolatore. Composte da: Link (connessioni - cavi - bus) paralleli o seriali Switch (instradatori - commutatori) Interfacce (rocessori - rete - memorie) (Architettura degli Elaboratori) Architetture parallele 40 / 71

11 Switch Metodi di comunicazione: Circuit switching, Store and forward: messaggio diviso in pacchetti. input, output, common buffering Routing: determinazione del percorso. (a) (c) (b) (d) Topologie di rete CU 1 Input port Output port A B End of packet (e) (f) C D Four-port switch Middle of packet CU 2 (g) (h) Front of packet (Architettura degli Elaboratori) Architetture parallele 41 / 71 (Architettura degli Elaboratori) Architetture parallele 42 / 71 Topologie di rete Modo di strutturare le unità di calcolo: Obiettivi massimizzare la ampiezza di banda, evitare colli di bottiglia, minimizzare le distanze (in numero di archi): diametro. Configurazione: stella, completamente interconnessa, albero, griglia, doppio toroide, ipercubo. geometria fissa o variabile Tassonomia dei computer paralleli Classificazione di Flynn (1972) SISD Single Instruction Single Data (macchina di von Neumann) SIMD Single Instruction Multiple Date (Computer Vettoriali) MIMD Multiple Instruction Multiple Data (Multiprocessori e multicomputer) MISD Multiple Instruction Multiple Data (nessun esempio) (Architettura degli Elaboratori) Architetture parallele 43 / 71 (Architettura degli Elaboratori) Architetture parallele 44 / 71

12 Una classificazione più fine arallel computer architectures SIMD: Array processor Control unit Broadcasts instructions SISD SIMD MISD MIMD (Von Neumann)? Vector processor Array processor Multi- processors Multi- computers UMA COMA NUMA M COW rocessor 8 8 rocessor/memory grid Bus Switched CC-NUMA NC-NUMA Grid Shared memory Hyper- cube Message passing iù processori controllati da una unità: ILLIAC IV (Architettura degli Elaboratori) Architetture parallele 45 / 71 (Architettura degli Elaboratori) Architetture parallele 46 / 71 GU (General urpose Unit) Le schede grafiche sono un implementazione moderna degli array processor. La computazione nelle GU (Graphical process uniti) avviene secondo lo schema array processor: la stessa operazione eseguita da semplici core su dati diversi. struttura della memoria complessa: ogni core ha una memoria privata, gruppi di core condividono una memoria locale, esiste una memoria comune a tutti i core. (Architettura degli Elaboratori) Architetture parallele 47 / 71 GGU (General urpose GU) Con i GGU si utilizzano le GU per calcoli generici (non grafici), solo alcuni tipi di calcolo adatti a questo tipo di computazione, si sfruttano l elevato numero di core (Nvidia Fermi Core). nuovi linguaggi di programmazione su GGU CUDA (Nvidia) OpenCL (Generico, usabile su più schede grafiche). (Architettura degli Elaboratori) Architetture parallele 48 / 71

13 Nvidia Fermi SIMD: Vector processor Input vectors Vector ALU Gerarchia di memoria: locale al singolo core, condivisa tra gruppi di core, memoria comune. ALU e Registri operano su vettori: CRAY. (Architettura degli Elaboratori) Architetture parallele 49 / 71 (Architettura degli Elaboratori) Architetture parallele 50 / 71 SIMD instruction I processori attuali implementano istruzioni vettoriali. Estensioni ai linguaggi macchina. ISA x86: MMX (MultiMedia extension) SSE (Streaming SIMD Extension),..., SSE4 AVX (Advance Vector extension) Utilizzati registri molto lunghi, centinaia di bit, contenenti vettori di dati (byte, half-word, word) su cui operare con istruzioni vettoriali. Si distingue tra: SIMD instruction istruzioni multimediali: lunghezza fissa. istruzioni vettoriali: insiemi di dati di lunghezza variabile, parametriche Vantaggi: si sfrutta la legge di Moore (i tanti transistor a disposizione), istruzioni vettoriali permettono un codice più compatto. (Architettura degli Elaboratori) Architetture parallele 51 / 71 (Architettura degli Elaboratori) Architetture parallele 52 / 71

14 Calcolatori MIMD Multiprocessori UMA multiprocessor UMA Uniform Access NUMA Non Uniform Access COMA Cache Only Access multicomputer M Massive arallel rocessor COW Cluster Of Workstation (NOW Network Of W.) Tutti i processori hanno stessi tempi di accesso alla memoria, SM (Symmetric Multi rocessor): quando i processori hanno la stessa visione della memorie e dei dispositivi I/0: (Architettura degli Elaboratori) Architetture parallele 53 / 71 (Architettura degli Elaboratori) Architetture parallele 54 / 71 Shared memory SM con singolo bus CU CU M CU CU M CU CU M Bus Cache rivate memory (a) (b) (c) Shared memory L implementazione più semplice di un sistema multiprocessore. Bus limita il numero di CU utilizzabili (16). Cache di grosse dimensioni per limitare l accesso al bus. Necessità di mantenere la coerenza della cache. (Architettura degli Elaboratori) Architetture parallele 55 / 71 Snooping cache Le cache spia il traffico sul bus per garantire la coerenza. Diverse implementazioni: Write through Read Miss Lettura dalla memoria. Read Hit Dati locali. Write Miss Aggiorna memoria - Invalida altre linee. Write Hit Aggiorna memoria e cache Invalida altre linee. Molti accessi al bus: semplice ma poco efficiente. (Architettura degli Elaboratori) Architetture parallele 56 / 71

15 Snooping cache: protocollo MESI rotocollo write back. Utilizzato nei processori Core. Ogni linea di cache viene marcato in uno tra 4 modi: (a) (b) CU 1 CU 2 CU 3 A Exclusive Cache CU 1 CU 2 CU 3 A Bus MESI, esempio CU 1 reads block A CU 2 reads block A Exclusive (sola copia in cache); Shared (linea presente in altre cache); Modified (linee cache diversa da quella in memoria); Invalid (linea non valida). (c) (d) Shared Shared Bus CU 1 CU 2 CU 3 A Modified Bus CU 1 CU 2 CU 3 A A Shared Shared Bus CU 2 writes block A CU 3 reads block A (Architettura degli Elaboratori) Architetture parallele 57 / 71 CU 1 CU 2 CU 3 (e) (Architettura degli Elaboratori) CU 2 writes block A Architetture parallele 58 / 71 A Modified Bus UMA con crossbar switch rocessori e memorie connesse con un crossbar switch, (Sun Fire E25K). Rete non bloccante. Elevato numero di switch. (O(n 2 )) CUs Memories (b) Crosspoint switch is open Crosspoint switch is closed (c) Closed crosspoint Open switch crosspoint (Architettura degli Elaboratori) switch Architetture parallele 59 / 71 (f) CU 1 CU 2 CU 3 A Modified Bus UMA con reti a commutazione CU 1 writes block A Rete Omega Rete bloccante. Limitato numero di switch. (O(n log n)) CUs b a 1A 1B 1C b 3 Stages 2A 2B 2C 111 1D 2D 3D a a 111 (Architettura degli Elaboratori) Architetture parallele 60 / 71 b 3A 3B 3C a b Memories

16 Multiprocessori NUMA Multiprocessori NUMA Not Uniform Access CU CU MMU Local bus Local bus CU Local bus CU Local bus Memoria locale e remota Un unico spazio di indirizzamento maggiore scalabilità: superano il limite delle 100 CU necessità di ridistribuire i dati System bus Hardware DSM Distributed Shared. (Architettura degli Elaboratori) Architetture parallele 61 / 71 (Architettura degli Elaboratori) Architetture parallele 62 / 71 Si dividono in: CC-NUMA presenza di caching limita gli accessi remoti directory (invece di snoooping cache) per garantire la coerenza NC-NUMA assenza di caching aumentano gli accessi paginazione sofisticata page scanner, per ridistribuire i dati COMA Cache Only Access la memoria locale è vista come una grande memoria cache problemi recupero dati. (Architettura degli Elaboratori) Architetture parallele 63 / 71 Multicomputer CU con spazio privato di memoria, non direttamente accessibile Vantaggi: maggiore scalabilità, efficienti nell eseguire in parallelo processi indipendenti (o con poca dipendenza). Es. server web. Caratteristiche: sistemi fault-tollerance, i singoli computer possono essere SM con bus singolo. (Architettura degli Elaboratori) Architetture parallele 64 / 71

17 CU Communication processor Local interconnect Disk and I/O Node Multicomputer Local interconnect High-performance interconnection network Si dividono in due categorie. Disk and I/O Massive arallel rocessor M Gli attuali supercomputer Un elevato numero di processori standard Rete di interconnessione sofisticata Librerie software parallelo Fault tollerance: necessario per l elevato numero di componenti Esempi: BlueGene: : 400K CU, Red Storm 10K CU Opeteron. (Architettura degli Elaboratori) Architetture parallele 65 / 71 (Architettura degli Elaboratori) Architetture parallele 66 / 71 BlueGene rogetto IBM. Record di prestazioni teoriche ed effettive. Campi d applicazione: scacchi, simulazione: protein-unfolding, sistemi biologici (cervello, cuore), cosmologia. Cluster of workstation COW Rete di interconnessione standard: si sfruttano i progressi nelle reti. Dispositivi economici, facilmente assemblabili, possono raggiungere prestazioni paragonabile ai M. Centralizzati o decentralizzati. (Architettura degli Elaboratori) Architetture parallele 67 / 71 (Architettura degli Elaboratori) Architetture parallele 68 / 71

18 Esempio: Cluster Google Esempio: Cluster Google Un numero limitato di datacenter (12) di grosse dimensioni. Il progetto poco pubblicizzato. rincipi costruttivi: utilizzare componenti economici (desk-top, rete Ethernet) di largo uso, con il miglior rapporto: prestazioni/(prezzo + consumi); (consumi 100MW) l affidabilità ottenuta attraverso ridondanza, la rottura di un componente non compromette il sistema. (Architettura degli Elaboratori) Architetture parallele 69 / 71 (Architettura degli Elaboratori) Architetture parallele 70 / 71 Grid computing Livello successivo di computazione parallela: Computazione distribuita su calcolatori connessi via web. meccanismi di protezione, gestione della risorse di calcolo, distribuzione del carico, sistemi di calcolo non omogenei, definizione di uno standard comune. (Architettura degli Elaboratori) Architetture parallele 71 / 71

Macchina di von Neumann. Architetture parallele

Macchina di von Neumann. Architetture parallele rchitetture parallele odello di calcolo: macchina di von Neumann. Control rithmetic logic Input Output acchina di von Neumann Limite alle prestazione ottenibili: un unica operazione in esecuzione una sola

Dettagli

Macchina di von Neumann. Architetture parallele. Cenni storici

Macchina di von Neumann. Architetture parallele. Cenni storici Architetture parallele Macchina di von Neumann Modello di calcolo: macchina di von Neumann. Control unit Arithmetic logic unit Input Output Limite alle prestazione ottenibili: un unica operazione in esecuzione

Dettagli

Parte VIII. Architetture Parallele

Parte VIII. Architetture Parallele Parte VIII Architetture Parallele VIII.1 Motivazioni Limite di prestazioni delle architetture sequenziali: velocità di propagazione dei segnali, la luce percorre 30 cm in un nsec! Migliore rapporto costo/prestazioni

Dettagli

La macchina di Von Neumann. Archite(ura di un calcolatore. L unità di elaborazione (CPU) Sequenza di le(ura. Il bus di sistema

La macchina di Von Neumann. Archite(ura di un calcolatore. L unità di elaborazione (CPU) Sequenza di le(ura. Il bus di sistema La macchina di Von Neumann rchite(ura di un calcolatore us di sistema Collegamento Unità di Elaborazione (CPU) Memoria Centrale (MM) Esecuzione istruzioni Memoria di lavoro Interfaccia Periferica P 1 Interfaccia

Dettagli

CALCOLO PARALLELO SUPERARE I LIMITI DI CALCOLO. A cura di Tania Caprini

CALCOLO PARALLELO SUPERARE I LIMITI DI CALCOLO. A cura di Tania Caprini CALCOLO PARALLELO SUPERARE I LIMITI DI CALCOLO A cura di Tania Caprini 1 CALCOLO SERIALE: esecuzione di istruzioni in sequenza CALCOLO PARALLELO: EVOLUZIONE DEL CALCOLO SERIALE elaborazione di un istruzione

Dettagli

Struttura del calcolatore

Struttura del calcolatore Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione

Dettagli

Macchina di von Neumann. Architetture parallele

Macchina di von Neumann. Architetture parallele rchitetture parallele odello di calcolo: macchina di von Neumann. Control rithmetic logic Input Output acchina di von Neumann Limite alle prestazione ottenibili: un unica operazione in esecuzione una sola

Dettagli

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

Dettagli

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici La Pipeline Superpipeline Pipeline superscalare Schedulazione dinamica della pipeline Processori reali: l architettura Intel e la pipeline dell AMD Opteron X4 Ricapitolando Con

Dettagli

CPU. Maurizio Palesi

CPU. Maurizio Palesi CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

La memoria centrale (RAM)

La memoria centrale (RAM) La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M.

Dettagli

La Gestione delle risorse Renato Agati

La Gestione delle risorse Renato Agati Renato Agati delle risorse La Gestione Schedulazione dei processi Gestione delle periferiche File system Schedulazione dei processi Mono programmazione Multi programmazione Gestione delle periferiche File

Dettagli

Parte IV Architettura della CPU Central Processing Unit

Parte IV Architettura della CPU Central Processing Unit Parte IV Architettura della CPU Central Processing Unit IV.1 Struttura della CPU All interno di un processore si identificano in genere due parti principali: l unità di controllo e il data path (percorso

Dettagli

Architetture parallele

Architetture parallele 1 Calcolatori paralleli A meno di una nuova rivoluzione scientifica la legge di Moore (che pronostica un raddoppio del numero di transistor su un singolo chip ogni 18 mesi) non potrà rimanere valida per

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Sistemi avanzati di gestione dei Sistemi Informativi

Sistemi avanzati di gestione dei Sistemi Informativi Esperti nella gestione dei sistemi informativi e tecnologie informatiche Sistemi avanzati di gestione dei Sistemi Informativi Docente: Email: Sito: eduard@roccatello.it http://www.roccatello.it/teaching/gsi/

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

DMA Accesso Diretto alla Memoria

DMA Accesso Diretto alla Memoria Testo di rif.to: [Congiu] - 8.1-8.3 (pg. 241 250) 08.a DMA Accesso Diretto alla Memoria Motivazioni Organizzazione dei trasferimenti DMA Arbitraggio del bus di memoria Trasferimento di un blocco di dati

Dettagli

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Indice generale. 1 Il calcolatore: astrazioni. 2 Le istruzioni: il linguaggio. e tecnologia 1. dei calcolatori 57

Indice generale. 1 Il calcolatore: astrazioni. 2 Le istruzioni: il linguaggio. e tecnologia 1. dei calcolatori 57 I Indice generale Prefazione viii 1 Il calcolatore: astrazioni e tecnologia 1 1.1 Introduzione 1 Tipi di calcolatore e loro caratteristiche 2 Cosa si può imparare da questo libro 5 1.2 Cosa c è dietro

Dettagli

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai Informatica di base Hardware: CPU SCHEDA MADRE HARDWARE DI UN PC 2 Hardware (parti fisiche) Sono le parti fisiche di un Personal Computer (processore, scheda madre, tastiera, mouse, monitor, memorie,..).

Dettagli

GPGPU GPGPU. anni piu' recenti e' naturamente aumentata la versatilita' ed usabilita' delle GPU

GPGPU GPGPU. anni piu' recenti e' naturamente aumentata la versatilita' ed usabilita' delle GPU GPGPU GPGPU GPGPU Primi In (General Purpose computation using GPU): uso del processore delle schede grafice (GPU) per scopi differenti da quello tradizionale delle generazione di immagini 3D esperimenti

Dettagli

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia

Dettagli

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1

Sistemi Operativi GESTIONE DELLA MEMORIA SECONDARIA. D. Talia - UNICAL. Sistemi Operativi 11.1 GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco

Sistemi Operativi. Memoria Secondaria GESTIONE DELLA MEMORIA SECONDARIA. Struttura del disco. Scheduling del disco. Gestione del disco GESTIONE DELLA MEMORIA SECONDARIA 11.1 Memoria Secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dello spazio di swap Struttura RAID Affidabilità Implementazione della memoria

Dettagli

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory

Sistemi Operativi. Interfaccia del File System FILE SYSTEM : INTERFACCIA. Concetto di File. Metodi di Accesso. Struttura delle Directory FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1

Dettagli

Calcolo numerico e programmazione Architettura dei calcolatori

Calcolo numerico e programmazione Architettura dei calcolatori Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:

Dettagli

Architettura di un sistema di calcolo

Architettura di un sistema di calcolo Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un

Dettagli

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Sistemi operativi di rete (locale) In una LAN si vogliono condividere

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni LEZIONE 2 (HARDWARE) a.a. 2011/2012 Francesco Fontanella Tre concetti Fondamentali Algoritmo; Automa (o anche macchina); Calcolo; 2 Calcolatore MACCHINA

Dettagli

Architettura dei calcolatori I parte Introduzione, CPU

Architettura dei calcolatori I parte Introduzione, CPU Università degli Studi di Palermo Dipartimento di Ingegneria Informatica C.I. 1 Informatica ed Elementi di Statistica 2 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore Sorce Architettura dei calcolatori

Dettagli

1.4a: Hardware (Processore)

1.4a: Hardware (Processore) 1.4a: Hardware (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.8, 3.9 IV ediz.: cap. 2.6, 2.7 Questi lucidi 23 nov 2011

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Linux nel calcolo distribuito

Linux nel calcolo distribuito openmosix Linux nel calcolo distribuito Dino Del Favero, Micky Del Favero dino@delfavero.it, micky@delfavero.it BLUG - Belluno Linux User Group Linux Day 2004 - Belluno 27 novembre openmosix p. 1 Cos è

Dettagli

Lezione 3: Architettura del calcolatore

Lezione 3: Architettura del calcolatore Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile

Dettagli

ARCHITETTURA DELL ELABORATORE

ARCHITETTURA DELL ELABORATORE 1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY ARCHITETTURA DELL ELABORATORE Prof. G. Ciaschetti 1. Tipi di computer Nella vita di tutti giorni, abbiamo a che fare con tanti tipi di computer, da piccoli o piccolissimi

Dettagli

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09

SISTEMI OPERATIVI. Prof. Enrico Terrone A. S: 2008/09 SISTEMI OPERATIVI Prof. Enrico Terrone A. S: 2008/09 Che cos è il sistema operativo Il sistema operativo (SO) è il software che gestisce e rende accessibili (sia ai programmatori e ai programmi, sia agli

Dettagli

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli

Dettagli

L architettura di riferimento

L architettura di riferimento Architetture degli elaboratori e delle reti Lezione 10 L architettura di riferimento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 10 1/27

Dettagli

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)

La gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1) La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 - parte II La memoria 1 La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso,

Dettagli

Calcolatori Elettronici

Calcolatori Elettronici Calcolatori Elettronici Classificazione dei calcolatori elettronici Sistemi basati sull architettura di von Neumann rchitettura dei calcolatori: definizioni Evoluzione dell architettura rchitettura della

Dettagli

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale Calcolatori Elettronici La memoria gerarchica La memoria virtuale Come usare la memoria secondaria oltre che per conservare permanentemente dati e programmi Idea Tenere parte del codice in mem princ e

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1 IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Sommario. Analysis & design delle applicazioni parallele. Misura delle prestazioni parallele. Tecniche di partizionamento.

Sommario. Analysis & design delle applicazioni parallele. Misura delle prestazioni parallele. Tecniche di partizionamento. Sommario Analysis & design delle applicazioni parallele Misura delle prestazioni parallele Tecniche di partizionamento Comunicazioni Load balancing 2 Primi passi: analizzare il problema Prima di iniziare

Dettagli

CALCOLATORI ELETTRONICI Lezione n. Arch_Par 3

CALCOLATORI ELETTRONICI Lezione n. Arch_Par 3 CALCOLATORI ELETTRONICI Lezione n. Arch_Par 3 ARRAY PROCESSORS. ARCHITETTURE A PARALLELISMO MASSIVO ESEMPI In questa lezione vengono presentati alcuni esempi di architetture a parallelismo massivo. Si

Dettagli

STRUTTURE DEI SISTEMI DI CALCOLO

STRUTTURE DEI SISTEMI DI CALCOLO STRUTTURE DEI SISTEMI DI CALCOLO 2.1 Strutture dei sistemi di calcolo Funzionamento Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione Hardware Architettura di un generico sistema

Dettagli

Architetture Applicative

Architetture Applicative Alessandro Martinelli alessandro.martinelli@unipv.it 6 Marzo 2012 Architetture Architetture Applicative Introduzione Alcuni esempi di Architetture Applicative Architetture con più Applicazioni Architetture

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

La componente tecnologica dei. sistemi informativi. Architettura hw. Componenti di una architettura hw

La componente tecnologica dei. sistemi informativi. Architettura hw. Componenti di una architettura hw Informatica o Information Technology La componente tecnologica dei sistemi informativi m. rumor Architettura del Sistema tecnologico Sistema tecnologico: insieme di componenti connessi e coordinati che

Dettagli

Come funziona un sistema di elaborazione

Come funziona un sistema di elaborazione Introduzione Cosa è un Sistema Sste aoperativo? Come funziona un sistema di elaborazione Proprietà dei Sistemi Operativi Storia dei Sistemi di Elaborazione Sistemi Mainframe Sistemi Desktop Sistemi i Multiprocessori

Dettagli

Lezione 10. Scheduling nei sistemi multiprocessori. Esempio: P=2 processori. Scheduling dei processi

Lezione 10. Scheduling nei sistemi multiprocessori. Esempio: P=2 processori. Scheduling dei processi Lezione 10 Cenni ai sistemi operativi distribuiti 2. Gestione della CPU e della memoria nei multiprocessori Gestione dei processi Scheduling Bilanciamento del carico Migrazione dei processi Gestione della

Dettagli

Classificazione delle Architetture Parallele

Classificazione delle Architetture Parallele Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Classificazione delle Architetture Parallele Corso di Sistemi Distribuiti Valeria Cardellini Anno accademico 2009/10 Architetture parallele

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Vari tipi di computer

Vari tipi di computer Hardware Cos è un computer? Un computer è un elaboratore di informazione. Un computer: riceve informazione in ingresso (input) elabora questa informazione Può memorizzare (in modo temporaneo o permanente)

Dettagli

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia L informatica È la disciplina scientifica che studia INTRODUZIONE I calcolatori, nati in risposta all esigenza di eseguire meccanicamente operazioni ripetitive Gli algoritmi, nati in risposta all esigenza

Dettagli

Architettura di un computer

Architettura di un computer Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su

Dettagli

Tecniche per il progetto di sistemi elettronici tolleranti ai guasti

Tecniche per il progetto di sistemi elettronici tolleranti ai guasti Tecniche per il progetto di sistemi elettronici tolleranti ai guasti Fulvio Corno, Maurizio Rebaudengo, Matteo Sonza Reorda Politecnico di Torino Dipartimento di Automatica e Informatica Le tecniche di

Dettagli

Tecniche di parallelismo, processori RISC

Tecniche di parallelismo, processori RISC Testo di riferimento: [Congiu] 9.1-9.3 (pg. 253 264) Tecniche di parallelismo, processori RISC 09.a Pipelining Altre tecniche di parallelismo Processori superscalari Caratteristiche dei processori RISC

Dettagli

Aumentare il parallelismo a livello di istruzione (2)

Aumentare il parallelismo a livello di istruzione (2) Processori multiple-issue issue Aumentare il parallelismo a livello di istruzione (2) Architetture Avanzate dei Calcolatori Valeria Cardellini Nei processori multiple-issue vengono lanciate più istruzioni

Dettagli

File System Distribuiti

File System Distribuiti File System Distribuiti Introduzione Nominazione e Trasparenza Accesso ai File Remoti Servizio Con/Senza Informazione di Stato Replica dei File Un esempio di sistema 20.1 Introduzione File System Distribuito

Dettagli

Introduzione. File System Distribuiti. Nominazione e Trasparenza. Struttura dei DFS. Strutture di Nominazione

Introduzione. File System Distribuiti. Nominazione e Trasparenza. Struttura dei DFS. Strutture di Nominazione File System Distribuiti Introduzione Nominazione e Trasparenza Accesso ai File Remoti Servizio Con/Senza Informazione di Stato Replica dei File Un esempio di sistema Introduzione File System Distribuito

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore

Dettagli

Fondamenti di informatica: un po di storia

Fondamenti di informatica: un po di storia Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi

Dettagli

Redundant Array of Inexpensive (Independent) Disks. Disco magnetico

Redundant Array of Inexpensive (Independent) Disks. Disco magnetico 26/5/25 RAID Redundant Array of Inexpensive (Independent) Disks Disco magnetico Costituito da un insieme di piatti rotanti (da a 5) Piatti rivestiti di una superficie magnetica Esiste una testina (bobina)

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM

Tipi classici di memoria. Obiettivo. Principi di localita. Gerarchia di memoria. Fornire illimitata memoria veloce. Static RAM. Problemi: Dynamic RAM Obiettivo Tipi classici di memoria Fornire illimitata memoria veloce Problemi: costo tecnologia Soluzioni: utilizzare diversi tipi di memoria... Static RAM access times are 2-25ns at cost of $100 to $250

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it La memoria principale 2 izzazione della memoria principale ria principale è organizzata come

Dettagli

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. Implementazione del File System. Struttura del File System. Implementazione IMPLEMENTAZIONE DEL FILE SYSTEM 9.1 Implementazione del File System Struttura del File System Implementazione Implementazione delle Directory Metodi di Allocazione Gestione dello spazio libero Efficienza

Dettagli

Una architettura peer-topeer per la visualizzazione 3D distribuita

Una architettura peer-topeer per la visualizzazione 3D distribuita Una architettura peer-topeer per la visualizzazione 3D distribuita Claudio Zunino claudio.zunino@polito.it Andrea Sanna andrea.sanna@polito.it Dipartimento di Automatica e Informatica Politecnico di Torino

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von

Dettagli

Creare una Rete Locale Lezione n. 1

Creare una Rete Locale Lezione n. 1 Le Reti Locali Introduzione Le Reti Locali indicate anche come LAN (Local Area Network), sono il punto d appoggio su cui si fonda la collaborazione nel lavoro in qualunque realtà, sia essa un azienda,

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del

Dettagli

Sistemi Operativi. 5 Gestione della memoria

Sistemi Operativi. 5 Gestione della memoria Gestione della memoria Compiti del gestore della memoria: Tenere traccia di quali parti della memoria sono libere e quali occupate. Allocare memoria ai processi che ne hanno bisogno. Deallocare la memoria

Dettagli

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6

GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1. Il Repeater 2. L Hub 2. Il Bridge 4. Lo Switch 4. Router 6 GLI APPARATI PER L INTERCONNESSIONE DI RETI LOCALI 1 Il Repeater 2 L Hub 2 Il Bridge 4 Lo Switch 4 Router 6 Gli apparati per l interconnessione di reti locali Distinguiamo i seguenti tipi di apparati:

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù

CALCOLATORI ELETTRONICI A cura di Luca Orrù Lezione 1 Obiettivi del corso Il corso si propone di descrivere i principi generali delle architetture di calcolo (collegamento tra l hardware e il software). Sommario 1. Tecniche di descrizione (necessarie

Dettagli

Il computer: primi elementi

Il computer: primi elementi Il computer: primi elementi Tommaso Motta T. Motta Il computer: primi elementi 1 Informazioni Computer = mezzo per memorizzare, elaborare, comunicare e trasmettere le informazioni Tutte le informazioni

Dettagli

Il Software. Il software del PC. Il BIOS

Il Software. Il software del PC. Il BIOS Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

Hardware di un Computer

Hardware di un Computer Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo Il Sistema Operativo Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo ... ma Cos'è un S.O.? un PROGRAMMA!... ma Cos'è un programma? PROGRAMMA: 1. algoritmo sequenza

Dettagli

Il sistema operativo TinyOS

Il sistema operativo TinyOS tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio

Dettagli

Struttura del Corso. Corso Integrato di Informatica e Sistemi di Elaborazione delle Informazioni. Sistemi di Elaborazione delle Informazioni.

Struttura del Corso. Corso Integrato di Informatica e Sistemi di Elaborazione delle Informazioni. Sistemi di Elaborazione delle Informazioni. Corso Integrato di Informatica e Sistemi di Elaborazione delle Informazioni Marco Falda Dipartimento di Ingegneria dell Informazione tel. 049 827 7918 marco.falda@unipd.it Corso di 35 ore: Struttura del

Dettagli

Corso di Sistemi di Elaborazione A.A. 2008/2009

Corso di Sistemi di Elaborazione A.A. 2008/2009 Università di Ferrara Facoltà di Ingegneria Docente: Ing. Massimiliano Ruggeri Mail: m.ruggeri@imamoter.cnr.it mruggeri@ing.unife.it Tel. 0532/735631 Corso di Sistemi di Elaborazione A.A. 2008/2009 Durata:

Dettagli

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2 Computazione multi-processo Avere più processi allo stesso momento implica/richiede Processi e Threads Pt. 2 Concorrenza ed efficienza Indipendenza e protezione dei dati ma deve prevedere/permettere anche:

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo Il Sistema Operativo (S.O.) è un insieme di programmi interagenti che consente agli utenti e ai programmi applicativi di utilizzare al meglio le risorse del Sistema

Dettagli

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine.

Quinto Homework. Indicare il tempo necessario all'esecuzione del programma in caso di avvio e ritiro fuori ordine. Quinto Homework 1) Si vuole progettare una cache a mappatura diretta per un sistema a 32 bit per una memoria da 2 GB (quindi sono solo 31 i bit utili per gli indirizzi) e blocchi di 64 byte. Rispondere

Dettagli