INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1



Documents pareils
Équilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de l Environnement AMPI.

Windows Server Chapitre 1: Découvrir Windows Server 2008

Initiation au HPC - Généralités

<Insert Picture Here> Solaris pour la base de donnés Oracle

Une méthode de conception de systèmes sur puce

Architecture des calculateurs

Eléments d architecture des machines parallèles et distribuées

Introduction à la Programmation Parallèle: MPI

Systèmes et traitement parallèles

Parallélisme et Répartition

THÈSE. Pour obtenir le grade de. Spécialité : Informatique. Arrêté ministériel : 7 août Présentée et soutenue publiquement par.

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Architecture des ordinateurs

Quantification d incertitude et Tendances en HPC

Chapitre 1 - Langages de description d architectures matérielles hybrides

Pour obtenir le grade de. Arrêté ministériel : 7 août Sylvain Genevès

Le modèle client-serveur

Exécution des instructions machine

GESTION DE LA MEMOIRE

Gestion répartie de données - 1

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Modélisation des interfaces matériel/logiciel

Présentation du déploiement des serveurs

Remote Networking - Evolutions. Serge Lhermitte Technical Director, Southern Europe

Les environnements de calcul distribué

Multiprogrammation parallèle générique des méthodes de décomposition de domaine

Consolidation. Grid Infrastructure avec la 11gR2

Software Engineering and Middleware A Roadmap

Cours 13. RAID et SAN. 2004, Marc-André Léger

Runtime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I

THÈSE. pour obtenir le grade de. Spécialité : "Informatique : Systèmes et Communications"

UNIVERSITÉ D ORLÉANS ÉCOLE DOCTORALE MIPTIS MATHÉMATIQUES, INFORMATIQUE, PHYSIQUE THÉORIQUE ET INGÉNIEURIE DES SYSTÈMES. THÈSE présentée par :

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing

Chapitre 01 Généralités

Le Network File System de Sun (NFS)

À qui s adresse cet ouvrage?

Administration de Citrix NetScaler 10.5 CNS-205-1I

Programmation parallèle et distribuée

Les utilisations des clusters dans les entreprises

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Cours n 12. Technologies WAN 2nd partie

Microsoft Dynamics AX. Solutions flexibles avec la technologie Microsoft Dynamics AX Application Object Server

Bienvenue sur Lab-Windows Il n'y a de vents favorables que pour ceux qui ont un cap

Techniques de stockage. Techniques de stockage, P. Rigaux p.1/43

Cluster High Availability. Holger Hennig, HA-Cluster Specialist

Passage à l échelle d applications java distribuées auto-adaptatives

Pré-requis techniques

Module 0 : Présentation de Windows 2000

Exercices Active Directory (Correction)

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

THÈSE DE DOCTORAT DE L UNIVERSITÉ PIERRE ET MARIE CURIE

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Parallel Execution. IS-Net 29 DATA WEBHOUSE. Informatique de gestion et systèmes d information

Une bibliothèque de templates pour CUDA

Configuration du serveur FTP sécurisé (Microsoft)

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

Systèmes répartis. Fabrice Rossi Université Paris-IX Dauphine. Systèmes répartis p.1/49

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

Réplication des données

Architecture distribuée

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Métriques de performance pour les algorithmes et programmes parallèles

Portfolio ADSL VDSL LTE

Réseau longue distance et application distribuée dans les grilles de calcul : étude et propositions pour une interaction efficace

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

École Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.

Architecture d un service de partage de données modifiables sur une infrastructure pair-à-pair

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013

Implémentation des SGBD

Conception de circuits numériques et architecture des ordinateurs

Gestion des accès et des identités

Consolidation de stockage

18 TCP Les protocoles de domaines d applications

Les réseaux de campus. F. Nolot

Windows Server Chapitre 3 : Le service d annuaire Active Directory: Concepts de base

Cours Informatique 1. Monsieur SADOUNI Salheddine

Exploitation efficace des architectures parallèles de type grappes de NUMA à l aide de modèles hybrides de programmation

Chapitre 4 : Exclusion mutuelle

Architecture des Ordinateurs. Partie II:

FileMaker Pro 13. Utilisation d une Connexion Bureau à distance avec FileMaker Pro 13

Introduction aux systèmes temps réel. Iulian Ober IRIT

Windows Internet Name Service (WINS)

Une Architecture de Bureaux Graphiques Distants Sécurisée et Distribuée

Matrice d accès. Master SEMS, Pierre Paradinas. October 16, 2013

DG-ADAJ: Une plateforme Desktop Grid

1 LE L S S ERV R EURS Si 5

Projet gestion d'objets dupliqués

Sécurité de l Infrastructure

NOTIONS DE RESEAUX INFORMATIQUES

Revue d article : Dynamic Replica Placement for Scalable Content Delivery

«clustering» et «load balancing» avec Zope et ZEO

Le e s tocka k ge g DAS,NAS,SAN

La continuité de service

FORMATION. Linux-HA et les systèmes de Cluster

en version SAN ou NAS

Online Workflow. Approbation factures

CommandCenter Secure Gateway

FACILITER LES COMMUNICATIONS. Le gestionnaire de réseau VPN global de Saima Sistemas

Transcription:

INF6500 : Structures des ordinateurs Sylvain Martel - INF6500 1

Cours 4 : Multiprocesseurs Sylvain Martel - INF6500 2

Multiprocesseurs Type SISD SIMD MIMD Communication Shared memory Message-passing Groupe Symmetric shared memory multiprocessors (SMP UMA) Mémoire distribuée et partagée (DSM NUMA) Mémoire distribuée non partagée (Multicomputer) RPC (Hybride) E/S Centralisées Distribuées Hybrides Coherence Protocol Directory-based Snooping Snooping Protocol Write invalidate Write update (broadcast) Synchronisation HDW primitives Lock (HDW: semaphore) Barrier (Spin-lock) Etc. Topologie Single bus Crossbar, etc. Hiérarchie Oui Non Processeurs Simple pipeline Superscalar Granularité Process Thread Sylvain Martel - INF6500 3

Performance Metrics pour communication entre plusieurs processeurs Communication bandwidth Limitée par le processeur, interconnections, au lieu du mécanisme de communication Communication latency Idéalement le plus bas possible, (sender overhead, delais relié au lien de communication (FIFO), receiver overhead) Communication latency hiding Latence de communication en parallèle avec computation Définitions: Bandwidth (bande passante), Throughput (Débit), Latency (Latence) Sylvain Martel - INF6500 4

Taxonomie des architectures parallèles Un seul flot d instruction, un seul flot de données (single instruction, single datum - SISD) : c est le monoprocesseur commun. Un seul flot d instructions, plusieurs flots de données (single instructions, multiple data - SIMD): La même instruction est exécutée par plusieurs processeurs utilisant différents flots de données. Chaque processeur a sa propre mémoire données, mais il y a une seule mémoire d instructions et un seul processeur de contrôle qui lance les instructions. Plusieurs flots d instructions, un seul flot de données (multiple instructions, single datum - MISD): aucune machine commerciale de ce type n a été construite à ce jour. Plusieurs flots d instructions, plusieurs flots de données (multiple instructions, multiple data MIMD): Chaque processeur lit ses propres instructions et opère sur ses propres données. Sylvain Martel - INF6500 5

SISD (Exemples) Processeur Instructions Mémoire Mémoire Processeur Instructions Mémoire Processeur Instructions Mémoire Mémoire Dual-Port Sylvain Martel - INF6500 6

SIMD (Exemple) Mémoire Processeur Instructions Mémoire Mémoire Processeur Mémoire Processeur Mémoire Processeur Sylvain Martel - INF6500 7

SIMD (Exemple - suite) Processeur Processeur Mémoire Processeur Processeur Mémoire Processeur Processeur Mémoire Processeur Processeur Mémoire Instruction 1 Instruction 2 Sylvain Martel - INF6500 8

SIMD (Exemple - suite) MUX Processeur Mémoire MUX Processeur Mémoire MUX Processeur Mémoire MUX Processeur Mémoire Instruction 1, 2, 1, 2, Sylvain Martel - INF6500 9

MIMD avec mémoire partagée ou mémoire distribuée Les premiers multiprocesseurs étaient SIMD. De nos jours, le modèle MIMD a surgit comme l architecture évidente à choisir pour le multiprocesseurs d usage général: Flexible : peut fonctionner comme une machine simple utilisateur destinée à la haute performance pour une application, comme une machine avec multiprogrammation exécutant beaucoup de tâches simultanément, ou selon une certaine combinaison de ces fonctions. Un MIMD peut être construit en s appuyant sur les avantages coût performance des microprocesseurs standard. Les machine MIMD actuelles sont classables en deux groupes, selon le nombre de processeurs. Architectures à mémoire partagée centralisée Au plus quelques douzaines de processeurs en1990 Se partagent la même mémoire physique La connexion est typiquement réalisée par un bus Temps d accès uniforme pour chaque processeur Sylvain Martel - INF6500 10

MIMD avec mémoire partagée (centralisée) Multi-thread Oriented Mémoire Principale Processeur 1 Processeur 2 Processeur 3 Processeur N Inter-processors: Shared Memory Model Sylvain Martel - INF6500 11

MIMD avec mémoires distribuées Multi-process Oriented Processeur 1 Processeur 2 Processeur 3 Processeur N Mémoire 1 Mémoire 2 Mémoire 3 Mémoire N Inter-processors: Message Passing Model Sylvain Martel - INF6500 12

Processes vs. threads Process: Segment de codes qui peut-être exécuté indépendamment par un processeur. Chaque «process» est indépendant des «processes» sur les autres processeurs Thread: Lorsque plusieurs «processes» partagent le code et la plupart de leurs adresses mémoires, ils sont référés comme des «threads». Sylvain Martel - INF6500 13

MIMD avec mémoire partagée centralisée Symmetric Shared Memory Multiprocessors (SMP) ou UMA (uniform memory access) Contention sur le bus Mémoire Principale Contention augmente avec augmentation de N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 14

Réduction de la performance à cause du niveau de contentions Performance Nombre de processeurs Sylvain Martel - INF6500 15

MIMD avec mémoire partagée centralisée Réduction du niveau de contention sur le bus avec mémoires caches Mémoire Principale Contention augmente moins avec augmentation de N (possibilité d ajouter plus de processeurs) Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 16

Réduction de la performance à cause du niveau de contentions Performance Avec cache Sans cache Nombre de processeurs Sylvain Martel - INF6500 17

MIMD avec mémoire partagée centralisée Problèmes de cohérence entre les mémoires caches (cache coherence) Copies semblables du bloc 0 Mémoire Principale Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 18

MIMD avec mémoire partagée centralisée Problèmes de cohérence entre les mémoires caches (cache coherence) - Suite Processeur 1 écrit dans le bloc 0, donc: différentes copies du bloc 0 Mémoire Principale Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 19

Protocoles de cohérence de caches (cache coherence protocols) Write Invalidate Protocol Snooping Protocols (Shared Memory) Write Update ou Write Broadcast Protocol Directory-based Protocols (Distributed Memory) Sylvain Martel - INF6500 20

Protocoles de cohérence de caches (cache coherence protocols) Write Invalidate Protocol Snooping Protocols (Centralized (single) Shared Memory) Write Update ou Write Broadcast Protocol Directory-based Protocols (Distributed Shared Memory) Sylvain Martel - INF6500 21

MIMD avec mémoire partagée centralisée WriteInvalidate T1 Processeur 1 écrit dans le bloc 0, donc: différentes copies du bloc 0 Mémoire Principale Snooping Bus Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 22

MIMD avec mémoire partagée centralisée WriteInvalidate T2 Met «invalide» la copie du bloc 0 dans la mémoire cache 3 Mémoire Principale Note: pour maintenir la demande de la bande passante sous Contrôle, il faut verifier si un bloc est partagé ou non. Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 23

MIMD avec mémoire partagée centralisée WriteInvalidate T3 Processeur 3 lit dans le bloc 0 mais invalide, bloc 0 est remplacé, puis il y a lecture Mémoire Principale Note: Effet d un tampon d écriture sur performance de P1 et P3, etc. 2 Cache 1 Cache 2 Cache 3 Cache N 1 3 Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 24

MIMD avec mémoire partagée centralisée WriteInvalidate T4 Processeur 3 tente d écrire dans le bloc 0 mais P1 a exclusivité, (exclusive accesses) écriture non permise Mémoire Principale Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 25

MIMD avec mémoire partagée centralisée WriteInvalidate T5 Le bloc 0 dans le cache 1 est remplacé par un autre bloc Mémoire Principale Exclusive Accesses Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 26

MIMD avec mémoire partagée centralisée WriteInvalidate T6 Le bloc 0 dans le cache 3 est remplacé par un autre bloc (dans aucun autre cache) 2 Mémoire Principale 1 Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 27

Protocoles de cohérence de caches (cache coherence protocols) Write Invalidate Protocol Snooping Protocols (Centralized (single) Shared Memory) Write Update ou Write Broadcast Protocol Directory-based Protocols (Distributed Shared Memory) Sylvain Martel - INF6500 28

MIMD avec mémoire partagée centralisée Write Update or Broadcast T1 Processeur 1 écrit dans le bloc 0, donc: différentes copies du bloc 0 Mémoire Principale Snooping Bus Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 29

MIMD avec mémoire partagée centralisée Write Update or Broadcast T2 «Update»la copie du bloc 0 dans la mémoire cache 3 Mémoire Principale Note: Avantages/désavantages de «update» du bloc 0 dans la mémoire principale, effet d un tampon d écriture, etc. Si broadcast (autres copies du bloc 0) Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 30

MIMD avec mémoire partagée centralisée WriteInvalidate T3 Processeur 3 lit dans le bloc 0, OK si «update» du bloc 0 est terminé, sinon attend Mémoire Principale Note: Effet d un tampon d écriture sur performance de P1 et P3, etc. Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 31

MIMD avec mémoire partagée centralisée Write Update or Broadcast T4 Processeur 3 tente d écrire dans le bloc 0 mais P1 a exclusivité, (exclusive accesses) écriture non permise, (échec au cache) Mémoire Principale Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 32

MIMD avec mémoire partagée centralisée Write Update or Broadcast T5 Le bloc 0 dans le cache 1 est remplacé par un autre bloc Mémoire Principale Exclusive Accesses Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 33

MIMD avec mémoire partagée centralisée Write Update or Broadcast T6 Le bloc 0 dans le cache 3 est remplacé par un autre bloc (dans aucun autre cache) 2 Mémoire Principale 1 Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 34

Write Invalidate vs. Write Update ou Broadcast Write Invalidate plus populaire car moins de trafic sur le bus, mais possibilité dune plus grande latence si un autre processeur a besoin de lire un mot dans le même bloc. Sylvain Martel - INF6500 35

Architectures de mémoires et mécanismes de communication Mémoire distribuée et partagée (Distributed Shared Memory DSM architecture) L espace d adresses est partagée entre les processeurs même si la mémoire n est pas centralisée mais distribuée Connue aussi sous le nom de NUMA (nonuniform memory access) parce que le temps d accès dépend du lieu ou adresse du mot accédé dans la mémoire Symmetric Shared Memory Multiprocessors (SMP) ou UMA (uniform memory access) Multicomputers (Message-passing multiprocessors) Mémoire distribuée mais non partagée Multiples espaces mémoires Clusters: ordinateurs connectés par LAN avec peu d intéractions Sylvain Martel - INF6500 36

MIMD avec mémoires distribuées non-partagées avec caches (message-passing multiprocessors) Préférence (shared-memory) (message-passing) Bus ou réseau d interconnexions Bus Interface MEM 1 MEM 2 MEM 3 MEM N Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 37

MIMD avec mémoires distribuées non-partagées avec caches Remote Procedure Call (RPC) 1. P3 requiert DATA dans MEM 1, 2. DATA est envoyé par P1 à P3 Message-passing Bus ou réseau d interconnexions MEM 1 MEM 2 MEM 3 MEM N Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Note: Dans le cache ou non, cohérence, etc. Sylvain Martel - INF6500 38

MIMD avec mémoires distribuées partagées (DSM) avec caches Bus ou réseau d interconnexions Bus Interface MEM 1 MEM 2 MEM 3 MEM N Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 39

MIMD avec mémoires distribuées partagées avec caches Accès normale (comme uni-processeur 1. P3 requiert DATA dans MEM 1, 2. P3 accède MEM 1 comme un accès à MEM 3 amis avec plus de cycles d attente (Wait-states), possibilité de contention sur le bus partagé donc plus long cycle d accès à la mémoire M1 Shared-memory Bus ou réseau d interconnexions MEM 1 MEM 2 MEM 3 MEM N Cache 1 Cache 2 Cache 3 Cache N Processeur 1 Processeur 2 Processeur 3 Processeur N Note: Dans le cache ou non, cohérence, etc. Sylvain Martel - INF6500 40

Protocoles de cohérence de caches (cache coherence protocols) Write Invalidate Protocol Snooping Protocols (Centralized (single) or Symmetric Shared Memory - SMP) Write Update ou Write Broadcast Protocol Directory-based Protocols (Distributed Shared Memory - DSM) Sylvain Martel - INF6500 41

MIMD avec mémoires distribuées partagées avec caches Cohérence avec l ajout de «directories» Shared-memory Bus ou réseau d interconnexions MEM 1 MEM 2 MEM 3 MEM N Cache 1 Cache 2 Cache 3 Cache N Directory Directory Directory Directory Processeur 1 Processeur 2 Processeur 3 Processeur N Note: Dans le cache ou non, cohérence, etc. Sylvain Martel - INF6500 42

Directory Chaque «directory» est responsable pour le «tracking» des caches qui partagent les mêmes adresses de mémoire dans le noeud (node). Le «directory» peut communiquer avec le processeur et la mémoire à travers un bus commun, ou il peut avoir un port séparé à la mémoire, ou il peut être une partie d un contrôleur central du noeud où toutes les communications intranodes et internode passent. Sylvain Martel - INF6500 43

Synchronisation Primitives matérielles de base (Hardware Primitives) Atomic read and modify (test-and-set) Autres techniques de synchronization LOCK BARRIER (SPIN-LOCK) Sylvain Martel - INF6500 44

Multi-threading avec un processeur DMUX Thread 1 Processeur Thread 1 Mémoire Pipeline 1 Pipeline 2 Sylvain Martel - INF6500 45

Multi-threading simultané avec un processeur superscalaire («converting thread-level parallelism into instruction-level parallelism) DMUX INSTR1 INSTR2 Processeur Mémoire Pipeline 1 Pipeline 2 Sylvain Martel - INF6500 46

Autre exemple pour discussion Mémoire Principale Cache Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 47

Autre exemple pour discussion Mémoire Principale Cache L2 L1 L1 L1 L1 Processeur 1 Processeur 2 Processeur 3 Processeur N Sylvain Martel - INF6500 48

Autre exemple pour discussion Mémoire Principale (Variables) C C C C Processeur 1 Processeur 2 Processeur 3 Processeur N C C C C Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Sylvain Martel - INF6500 49

Autre exemple pour discussion E/S Mémoire Principale (Variables) C C C C Processeur 1 Processeur 2 Processeur 3 Processeur N C C C C Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Sylvain Martel - INF6500 50

Autre exemple pour discussion Mémoire Principale (Variables) C C C C Processeur 1 Processeur 2 Processeur 3 Processeur N C C C C E/S E/S E/S E/S Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Sylvain Martel - INF6500 51

Autre exemple pour discussion CLUSTER Mémoire Principale (Variables) C C C C Processeur 1 Processeur 2 Processeur 3 Processeur N C C C C Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Mémoire Locale (Instr., cte) Sylvain Martel - INF6500 52

Autre exemple pour discussion (suite) Message-passing Cluster 1 Cluster 2 Cluster 3 Cluster N Sylvain Martel - INF6500 53

Autre exemple pour discussion Shared-memory Mémoire Principale (Globale) C C C C Cluster 1 Cluster 2 Cluster 3 Cluster N Sylvain Martel - INF6500 54

Autre exemple pour discussion Message-passing CROSSBAR Cluster 1 Cluster 2 Cluster 3 Cluster N Sylvain Martel - INF6500 55

Autre exemple pour discussion Mémoire Principale (Globale) BANK 0 Mémoire Principale (Globale) BANK 1 Mémoire Principale (Globale) BANK 3 CROSSBAR Shared-memory C C C C Cluster 1 Cluster 2 Cluster 3 Cluster N Sylvain Martel - INF6500 56

Sylvain Martel - INF6500 57