Multi-processeurs, multi-cœurs, cohérence mémoire et cache
|
|
- Madeleine Savard
- il y a 8 ans
- Total affichages :
Transcription
1 Multi-processeurs, multi-cœurs, cohérence mémoire et cache Intervenant : Thomas Robert Institut Mines-Télécom
2 Parallélisme inter instructions n Exécution : une séquence d instructions appliquées à un 1 ensemble de registres + emplacements mémoire n 1 instruction = succession d étapes => 1 début, 1 fin Parfois avec des lectures/écritures de la mémoire Parfois avec des lectures écritures de registres n Objectif des contraintes sur l ordre d exécution : Maintenir une sémantique séquentielle équivalente C1 Ordre de terminaison identique à l ordre d entrée dans le pipeline C2 Ordre des accès mémoire identique à celui des instructions 2 19/10/15 Institut Mines-Télécom
3 Architecture Pipeline simple (TD2) Registres de travail pipeline Mémoire principale Interface du Bus Contrôleur mémoire Bus du Système C1 + C2 3 19/10/15 Institut Mines-Télécom
4 Architecture Monoprocesseur Superscalaire Registres de travail Pipeline FU1 FU2 Mémoire principale Interface du Bus Contrôleur mémoire Bus du Système C2 4 19/10/15 Institut Mines-Télécom
5 Classification des processeurs (Flynn) n Intérêt : une manière classique d identifier le comportement d un processeur Single Instruction Single Data (SISD) : uni-processeur (1 pipeline) Single instruction Multiple Data (SIMD) : GPU Multiple instruction Single Data (MISD) : processeur dédié aux application très «critiques» (e.g. ordinateurs de bord satellites) Multiple instruction Multiple Data (MIMD): Multi cœurs / multi processeurs n Dans la suite nous verrons le dernier cas + le rôle de la mémoire 5 19/10/15 Institut Mines-Télécom
6 Parallélisme niveau Thread (matériel) n Activité = N x (séquence d instructions + état) n 3 Problèmes différents 1. Maintenir N états d exécutions 2. Échanger des données et assurer la synchronisation 3. Partager (répartir) les ressources communes matérielles Solutions matérielles : n Réponse 1 : a) dupliquer les registres (à minima), b) dupliquer les pipelines + registres + n Réponse 2 : la suite de ce cours n Réponse 3 : non traité ici 6 19/10/15 Institut Mines-Télécom
7 Architecture Multi processeur (I) mémoire distribuée espace d adresses séparés Registres de travail Registres de travail pipeline pipeline Mémoire Mémoire Interface E/S Contrôleur mémoire Interface E/S Contrôleur mémoire Réseau Si espaces d adressage séparés => il faut transférer les données via un réseau (implique un protocole d échange) 7 19/10/15 Institut Mines-Télécom
8 Architecture Multi processeur (II) Mémoire centralisée / espace d adressage partagé Registres de travail pipeline Mémoire principale Registres de travail pipeline Interface du Bus Contrôleur mémoire Interface du Bus Bus du Système Quelles interactions avec la mémoire? 1 espace d adressage : = 1 contenu accessible par tous 8 19/10/15 Institut Mines-Télécom
9 Architecture Multi processeur (III) mémoire distribuée/espace d adresses partagé Registres de travail Registres de travail pipeline pipeline Mémoire 1 Mémoire 2 Interface Bus Contrôleur mémoire Interface Bus Contrôleur mémoire Bus d interconnexion {@}= {@ mem1} + {@ mem2} + Architecture dite NUMA : non uniform memory access Généralisation possible : N bus interconnectés par des ponts 9 19/10/15 Institut Mines-Télécom
10 Le problème des accès concurrents à la mémoire n Rappel Principe du data race (en général) 2 activités séquentielles utilisant X comme variable partagée X lue au début de chaque séquence X utilisée pour stocker le résultat S: lire X, calculer F(X), écrire X ; S : lire X, calcul g(x), écrire X Si X vaut X0 au début => 4 valeurs possibles: f(x0), g(x0), f(g(x0), g(f(x0)) n Problème concret pour l entrelacement des instructions (e.g. processeur RISC) A=A+4; devient ld r3,@a; add r3,4,r4; sw r4,@a; => 3 instructions pour lire incrémenter et mémoriser A 10 19/10/15 Institut Mines-Télécom
11 Synchronisation : test & set (TAS) (Rappel BCI) n Variable X : nb de «programmes» en section critique n Effet test and set : tsl Rd [@1] 1 ; n Usage classique (naif avec attente active) tsl r1, X cmp X,0 bnez loop; <<section critique>> sw 0, X: n Implémentation pour architecture avec 1 bus (nouveau) : Naif : vérrouiller le bus pendant la résolution du TAS (accès exclusif) Moins Naif : mémoriser les TAS en cours 11 19/10/15 Institut Mines-Télécom
12 Synchronisation & opération atomiques n Objectifs : Éviter des calculs incohérents Optimiser l usage des ressources n Pb n 1 éviter les calculs incohérents n Solution niveau jeu d instruction = opérations atomiques de lecture / écriture de la mémoire n A retenir : + d une primitive => usages différents Test and set Compare and swap ( ) Fetch and add Load-link / store conditional n PB : hiérarchie mémoire => stockée en plusieurs endroits 12 19/10/15 Institut Mines-Télécom
13 Rappel sur le fonctionnement du cache : politique d écriture n Unité de stockage dans un cache == un bloc n Si cache de donnée : accès en lecture et écriture n Politique d écriture différée (write-back) Les écritures sont stockées dans le cache Les valeurs sont mises à jour en mémoire lorsque le contenu du cache doit en sortir n Politique d écriture synchrone (write through) Les écritures sont stockées dans le cache Elles sont propagées en mémoire 13 19/10/15 Institut Mines-Télécom
14 Architecture Multi processeur mémoire partagée avec cache : gestion des copies Registres de travail pipeline Mémoire principale Registres de travail pipeline Interface du Bus Cache Local Contrôleur mémoire Interface du Bus Cache Local Bus du Système Quels problèmes pose les caches? 14 19/10/15 Institut Mines-Télécom
15 Fonctionnement d un cache séquence lire calculer écrire (read modify write) n Soit x à l adresse cache direct mapped tel que x va dans dans l entrée numéro 0 (B0), x occupe tout B0 processor Cache B0: (invalid) Programme I1 : ld 4092, r1 I2 : add, r1, 4 I3 : st r1, 4092 Main memory x=
16 Fonctionnement d un cache séquence lire calculer écrire (read modify write) n Instructions : ld load, st store n ld déclenche un cache miss qui met à jour L0 processor Cache B0: Programme I1 : ld 4092, r1 I2 : add, r1, 4 I3 : st r1, 4092 Main memory x=
17 Fonctionnement d un cache séquence lire calculer écrire (read modify write) n L instruction add n a pas d effet sur le cache processor Cache B0: Programme I1 : ld 4092, r1 I2 : add, r1, 4 I3 : st r1, 4092 Main memory x=
18 Fonctionnement d un cache séquence lire calculer écrire (read modify write) n L instruction st a un effet différent en fonction de la politique Cas write back Cas write through processor processor Cache B0: Main memory x=15213 Transfert vers la mémoire Cache B0: Main memory x=15217 Programme I1 : ld 4092, r1 I2 : add, r1, 4 I3 : st r1,
19 Problème de la cohérence du cache (1) : Avoir un data race alors qu on utilise des verrous Coeur 1 PC: I0 Coeur 2 PC: I0 Coeur 3 Cache Cache = 4092 Programme I0 : tsl r1, lock i1 : bnz I0 // jump if 0 I2 : ld 4092, r1 I3 : add, r1, 4 I4 : st r1, 4092 I5 : st r0, lock ; //r0=0 I6 : jmp I0 Main memory x=15213 Les deux cœurs exécutent Programme lock vaut 0 à l origine, Supposons que lock ne va pas dans le cache Politique de réécriture : write-back 19 19/10/15 Institut Mines-Télécom
20 Problème de la cohérence du cache (2) : Avoir un data race alors qu on utilise des verrous Coeur 1 I4 Cache x=15217 Coeur 2 I0 Cache Coeur 3 Cache C1 C2 Programme I0 : tsl r1, lock i1 : bnz I0 I2 : ld 4092, r1 I3 : add, r1, 4 I4 : st r1, 4092 I5 : st r0,lock ; //r0=0 I6 : jmp I0 Main memory x=
21 Problème de la cohérence du cache (3) : Avoir un data race alors qu on utilise des verrous Coeur 1 PC: I6 Cache x=15217 Coeur 2 PC: I2 Cache? Coeur 3 Cache Programme I0 : tsl r1, lock i1 : bnz I0 I2 : ld 4092, r1 I3 : add, r1, 4 I4 : st r1, 4092 I5 : st r0,lock ; I6 : jmp I0 C1 C2 Main memory x=15213 Cœur 1 a exécuté I5, lock est à 0 Cœur 2 prend le verrou et exécute I2 Pb : quelle sera la valeur chargée? 21
22 Problème de la cohérence du cache (1) : Avoir un data race alors qu on utilise des verrous Coeur 1 PC: I6 Cache x=15217 Coeur 2 PC: I3 Cache L0 : Coeur 3 Cache Programme I0 : tsl r1, lock i1 : bnz I0 I2 : ld 4000, r1 I3 : add, r1, 4 I4 : st r1, 4000 I5 : st r0,lock ; I6 : jmp I0 Main memory x=15213 En l absence d action spécifique L0 sur cœur 2 charge la valeur depuis la mémoire 22
23 Problème de la cohérence de cache Est ce mieux en write through n Hypothèse : 2 cœurs C1, C2 avec chacun un cache permettant de mettre en cache X n Identification du problème : 2 cœurs avec une donnée identique au contenu mémoire Ecriture de X sur cœur C1 => X dans le cache de C1 avec pour valeur V et et idem en mémoire Lecture, puis écriture de X sur cœur C2 => X dans le cache de C2 avec pour valeur V et la mémoire contient x=v Le contenu du cache de C1 est périmé!!! (vaut V contenu mémoire) Cependant si C1 accède à X, il y aura cache hit et utilisation de l ancienne valeur 23 19/10/15 Institut Mines-Télécom
24 Problème et modèle de cohérence n Définition : problème de cohérence de cache Violation de la sémantique d une activité parallèle causée par une combinaison de valeurs différentes entre un emplacement mémoire et ses différentes copies dans les caches. n Définition : modèle de cohérence (consistency model) Contraintes sur l ordre dans lequel les écritures en mémoire sont réalisées. Cas des caches : contraintes sur les transferts entre caches et mémoire n Modèle de référence : cohérence séquentielle Les écritures d une même séquence d instructions sont réalisées dans l ordre. Les écritures de deux séquences d instructions exécutée sur deux cœurs différents sont entrelacées /10/15 Institut Mines-Télécom
25 Mise en œuvre d un modèle de cohérence Le protocole de cohérence n Solution très populaire : scrutation (snooping) Coeur 1 Coeur 2 Coeur 3 Informations circulant sur B : Adresse + type d accès Cache snoop Cache snoop Cache snoop Main : Objectif déterminer les blocs partageant leur contenu (i.e. tag + index) Solution : - observer les accès en lecture pour détecter le Partage - Mettre à jour son état pour éviter les problèmes de cohérence 25
26 Protocole de scrutation : état des blocs n Il peut y avoir plusieurs caches contenant un même bloc si sa valeur est identique à la mémoire. n Si une opération modifie un bloc dans un cache, Choix 1 ce dernier doit informer les autres que leur «copie» est dépassée (invalidation) Choix 2 ce dernier diffuse la mise à jour du bloc (update) n Comportement détaillé à définir pour chaque événement (Read/Write x Hit/Miss) n Pb : le protocole occupe le bus commun Invalidation => read/write miss Mise à jour => transfère du bloc modifié 26
27 Syntaxe des automate communicants n Pré-requis : notation graphique d un automate fini n Idée : identifier ce qui est observé émis, arcs = obs/action Si e est émis/exécuté : e! Si e est reçu / observé : e? e?/- c?/b! b?/c! n Note : modèle du cache = réactif => toujours 1 observation 27
28 Événements observés / exécutés n Les messages sur le bus entre processeurs et mémoire Requête de lecture suite à un read miss: BusL4R (load for Read) Requête de lecture suite à un write miss: BusL4W (load for Write) Signal d invalidation : Inv Diffusion du bloc mis à jour (Write back) : Wb n Les événements observés par le cache lors d une demande d accès du processeur (read/write x hit /miss) Read hit : PrRH Read miss : PrRM Write hit : PrWH Write Miss : PrWM n Remarque : un cache émet sur ou observe le bus pas les deux! Il peut emettre 2 messages (e.g. Wb puis BusL4X) 28
29 Protocole d invalidation de ligne (MSI) pour cache write-back n Idée : autoriser 1 seul écrivain ou (exclusif) autant de lecteurs que nécessaire n Etat d un bloc : étiquette + contenu + état de partage Modified : contenu bloc mémoire suite à une écriture (écrivain) Shared : contenu bloc = mémoire (lecteurs) Invalid : le contenu de ce bloc ne doit pas être utilisé n Hyp : adresse quelconque PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/- M PrWH@?/Inv@! BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 29
30 Protocole d invalidation de ligne (MSI) pour cache write-back Taille bloc : 4 octets, adressage par mots de 2 octets Cache1 État Cache2 état B0 Etq=4096, Val=FA C1 charge 4096 dans r1 S Etq=0, Val= Val 4096 FA B PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWH@?/- M BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/Inv@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 30
31 Protocole d invalidation de ligne (MSI) pour cache write-back Taille bloc : 4 octets, adressage par mots de 2 octets Cache1 État Cache2 état B0 Etq=4096, Val=FA C2 charge 4096 dans r1 S Etq=4096, Val=FA Val 4096 FA B PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWH@?/- M BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/Inv@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 31
32 Protocole d invalidation de ligne (MSI) pour cache write-back Taille bloc : 4 octets, adressage par mots de 2 octets Cache1 État Cache2 état B0 Etq=4096, Val=FFFF0002 M C1 écrit FFFF à l adresse 4096 Etq=4096, Val=FA Val 4096 FA B PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWH@?/- M BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/Inv@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 32
33 Protocole d invalidation de ligne (MSI) Faux partage Taille bloc : 4 octets, adressage par mots de 2 octets Et si C1 avait écrit FFFF à l adresse 4097 Cache1 État Cache2 état Val 4096 FA B PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWH@?/- M BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/Inv@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 33
34 Protocole d invalidation de ligne (MSI) Faux partage Taille bloc : 4 octets, adressage par mots de 2 octets Et si C1 avait écrit FFFF à l adresse 4097 Cache1 État Cache2 état B0 Etq=4096, Val=FA01FFFF M Etq=4096, Val=FA Val 4096 FA B PrWM@?/Wb@!,BusL4W@! PrRH@?/- PrWH@?/- M BusL4W@?/Wb@! I PrWM@?/BusL4W@! BusL4W@?/- Inv@?/- PrRM@?/BusL4R@! PrWM@?/BusL4W@! PrRM@?/Wb@!,BusL4R@! PrWH@?/Inv@! S PrRM@?/BusL4R@! PrRH@?/- BusL4R@?/- 34
35 Observation et Conclusion n Parallélisme + hiérarchie mémoire = pb difficile n Objectif n 1 faire des calculs corrects n Notion abordée en TD : conséquence faux partage n Protocole de cohérence => usage du bus Pour signaler les changements d état Pour transférer les mises à jour des blocs n Pour plus de détails & autres protocoles Chap 9 : Computer Organization and Design: The Hardware/Software Interface, by D. Patterson, J. Hennessy Approche alternative : déplacement explicite des données! 35
INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1
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
Plus en détailInitiation au HPC - Généralités
Initiation au HPC - Généralités Éric Ramat et Julien Dehos Université du Littoral Côte d Opale M2 Informatique 2 septembre 2015 Éric Ramat et Julien Dehos Initiation au HPC - Généralités 1/49 Plan du cours
Plus en détailExécution des instructions machine
Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]
Plus en détailIntroduction à la Programmation Parallèle: MPI
Introduction à la Programmation Parallèle: MPI Frédéric Gava et Gaétan Hains L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours du M2 SSI option PSSR Plan 1 Modèle de programmation 2 3 4
Plus en détail<Insert Picture Here> Solaris pour la base de donnés Oracle
Solaris pour la base de donnés Oracle Alain Chéreau Oracle Solution Center Agenda Compilateurs Mémoire pour la SGA Parallélisme RAC Flash Cache Compilateurs
Plus en détailGestion des transactions et accès concurrents dans les bases de données relationnelles
Gestion des transactions et accès concurrents dans les bases de données relationnelles Bernard ESPINASSE Professeur à Aix-Marseille Université (AMU) Ecole Polytechnique Universitaire de Marseille Fev.
Plus en détailProjet gestion d'objets dupliqués
Projet gestion d'objets dupliqués Daniel Hagimont Daniel.Hagimont@enseeiht.fr 1 Projet Service de gestion d'objets dupliqués Mise en cohérence lors de la prise d'un verrou sur un objet Pas de verrous imbriqués
Plus en détailUne méthode de conception de systèmes sur puce
École thématique ARCHI 05 Une méthode de conception de systèmes sur puce (de l intégration d applications) Frédéric PÉTROT Laboratoire TIMA Institut National Polytechnique de Grenoble Frédéric Pétrot/TIMA/INPG
Plus en détailArchitecture des calculateurs
Formation en Calcul Scientifique - LEM2I Architecture des calculateurs Violaine Louvet 1 1 Institut Camille jordan - CNRS 12-13/09/2011 Introduction Décoder la relation entre l architecture et les applications
Plus en détailRappels d architecture
Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée
Plus en détailRéplication des données
Réplication des données Christelle Pierkot FMIN 306 : Gestion de données distribuées Année 2009-2010 Echange d information distribuée Grâce à un serveur central Une seule copie cohérente Accès à distance
Plus en détailDU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION
145 NOTION DE PROGRAMMATION 1/ Complétons notre microprocesseur Nous avons, dans les leçons précédentes décrit un microprocesseur théorique, cependant il s inspire du 6800, premier microprocesseur conçu
Plus en détailSGM. Master S.T.S. mention informatique, première année. Isabelle Puaut. Septembre 2011. Université de Rennes I - IRISA
SGM Master S.T.S. mention informatique, première année Isabelle Puaut Université de Rennes I - IRISA Septembre 2011 Isabelle Puaut SGM 2 / 1 Organisation de l enseignement Semestre 1 : processus, synchronisation
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailArchitecture des ordinateurs
Décoder la relation entre l architecture et les applications Violaine Louvet, Institut Camille Jordan CNRS & Université Lyon 1 Ecole «Découverte du Calcul» 2013 1 / 61 Simulation numérique... Physique
Plus en détailFonctionnement et performance des processeurs
Fonctionnement et performance des processeurs Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Plan Fonctionnement des processeurs Unités de calcul
Plus en détailGestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr
Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr 1- Structure d un disque 2- Ordonnancement des requêtes 3- Gestion du disque - formatage - bloc d amorçage - récupération
Plus en détailCours Bases de données
Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles
Plus en détailCours Bases de données 2ème année IUT
Cours Bases de données 2ème année IUT Cours 12 : Concurrence d accès Anne Vilnat http://www.limsi.fr/individu/anne/cours Plan 1 Accès concurrents Définitions Verrous Collisions Niveaux de cohérence Blocage
Plus en détailCM2 L architecture MIPS32
CM2 L architecture MIPS32 Olivier Marchetti (CM-TD-TP) Alexandre Brière (TD-TP) Laboratoire d informatique de Paris 6 Pôle SoC UPMC Année 2014-2015 Instructions MIPS Contrôle Données en MIPS E/S en MIPS
Plus en détailGESTION DE LA MEMOIRE
GESTION DE LA MEMOIRE MEMOIRE CENTRALE (MC) MEMOIRE SECONDAIRE (MS) 1. HIÉRARCHIE ET DIFFÉRENTS TYPES DE MÉMOIRE... 2 2. MÉMOIRE CACHE... 3 3. MODÈLE D'ALLOCATION CONTIGUË (MC OU MS)... 5 3.1. STRATÉGIE
Plus en détailBases de données et sites WEB Licence d informatique LI345
Bases de données et sites WEB Licence d informatique LI345 Anne Doucet Anne.Doucet@lip6.fr http://www-bd.lip6.fr/ens/li345-2013/index.php/lescours 1 Contenu Transactions en pratique Modèle relationnel-objet
Plus en détailSur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)
1/ Généralités : Un ordinateur est un ensemble non exhaustif d éléments qui sert à traiter des informations (documents de bureautique, méls, sons, vidéos, programmes ) sous forme numérique. Il est en général
Plus en détailSystèmes et traitement parallèles
Systèmes et traitement parallèles Mohsine Eleuldj Département Génie Informatique, EMI eleuldj@emi.ac.ma 1 Système et traitement parallèle Objectif Etude des architectures parallèles Programmation des applications
Plus en détail4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
Plus en détailTechniques de stockage. Techniques de stockage, P. Rigaux p.1/43
Techniques de stockage Techniques de stockage, P. Rigaux p.1/43 Techniques de stockage Contenu de ce cours : 1. Stockage de données. Supports, fonctionnement d un disque, technologie RAID 2. Organisation
Plus en détailImplémentation des SGBD
Implémentation des SGBD Structure générale des applications Application utilisateur accédant à des données d'une base Les programmes sous-jacents contiennent du code SQL Exécution : pendant l'exécution
Plus en détailÉquilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de l Environnement AMPI.
Facultés Universitaires Notre-Dame de la Paix, Namur Institut d Informatique Année académique 2003-2004 Équilibrage Dynamique de Charge pour des Calculs Parallèles sur Cluster Linux - Une Évaluation de
Plus en détailSGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)
SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients
Plus en détailEléments d architecture des machines parallèles et distribuées
M2-RISE - Systèmes distribués et grille Eléments d architecture des machines parallèles et distribuées Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle Notions d architecture
Plus en détailGestion répartie de données - 1
Gestion répartie de données - 1 Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/~krakowia Gestion répartie de données Plan de la présentation Introduction
Plus en détailGPA770 Microélectronique appliquée Exercices série A
GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément
Plus en détailArchitecture des Ordinateurs. Partie II:
Architecture des Ordinateurs Partie II: Le port Floppy permet le raccordement du lecteur de disquette àla carte mère. Remarque: Le lecteur de disquette a disparu il y a plus de 6 ans, son port suivra.
Plus en détailLes transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions
1/46 2/46 Pourquoi? Anne-Cécile Caron Master MAGE - SGBD 1er trimestre 2014-2015 Le concept de transaction va permettre de définir des processus garantissant que l état de la base est toujours cohérent
Plus en détailINTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores
INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN
Plus en détailASR1 TD7 : Un microprocesseur RISC 16 bits
{Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailIntroduction aux systèmes temps réel. Iulian Ober IRIT ober@iut-blagnac.fr
Introduction aux systèmes temps réel Iulian Ober IRIT ober@iut-blagnac.fr Définition Systèmes dont la correction ne dépend pas seulement des valeurs des résultats produits mais également des délais dans
Plus en détailPROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN
PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN 1. DÉVELOPPEMENT D'APPLICATION (CONCEPTEUR ANALYSTE) 1.1 ARCHITECTURE MATÉRIELLE DU SYSTÈME INFORMATIQUE 1.1.1 Architecture d'un ordinateur Processeur,
Plus en détail1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :
GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours
Plus en détailTD Architecture des ordinateurs. Jean-Luc Dekeyser
TD Architecture des ordinateurs Jean-Luc Dekeyser Fiche 1 Nombres de l informatique Exercice 1 Une entreprise désire réaliser la sauvegarde de ses données sur un site distant. Le volume de données à sauvegarder
Plus en détailTemps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> Septembre 2011
Temps Réel Jérôme Pouiller Septembre 2011 Sommaire Problèmatique Le monotâche Le multitâches L ordonnanement Le partage de ressources Problèmatiques des OS temps réels J. Pouiller
Plus en détailArchitecture des ordinateurs TD1 - Portes logiques et premiers circuits
Architecture des ordinateurs TD1 - Portes logiques et premiers circuits 1 Rappel : un peu de logique Exercice 1.1 Remplir la table de vérité suivante : a b a + b ab a + b ab a b 0 0 0 1 1 0 1 1 Exercice
Plus en détailISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL
ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé
Plus en détailM2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013
Rendu Temps Réel - OpenGL 4 et compute shaders December 18, 2013 résumé des épisodes précédents... création des objets opengl, organisation des données, configuration du pipeline, draw,... opengl 4.3 :
Plus en détailParallélisme et Répartition
Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre
Plus en détailArgument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données
EARTH et Threaded-C: Éléments clés du manuel de références de Threaded-C Bref historique de EARTH et Threaded-C Ancêtres de l architecture EARTH: Slide 1 Machine à flux de données statique de J.B. Dennis
Plus en détail//////////////////////////////////////////////////////////////////// Administration bases de données
////////////////////// Administration bases de données / INTRODUCTION Système d informations Un système d'information (SI) est un ensemble organisé de ressources (matériels, logiciels, personnel, données
Plus en détailStructure fonctionnelle d un SGBD
Fichiers et Disques Structure fonctionnelle d un SGBD Requetes Optimiseur de requetes Operateurs relationnels Methodes d acces Gestion de tampon Gestion de disque BD 1 Fichiers et Disques Lecture : Transfert
Plus en détailModule BDR Master d Informatique (SAR)
Module BDR Master d Informatique (SAR) Cours 9- Transactions réparties Anne Doucet Anne.Doucet@lip6.fr Transactions réparties Gestion de transactions Transactions dans un système réparti Protocoles de
Plus en détailTHÈSE. Pour obtenir le grade de. Spécialité : Informatique. Arrêté ministériel : 7 août 2006. Présentée et soutenue publiquement par.
THÈSE Pour obtenir le grade de DOCTEUR DE L UNIVERSITÉ DE GRENOBLE Spécialité : Informatique Arrêté ministériel : 7 août 2006 Présentée et soutenue publiquement par Fabien GAUD le 02 Décembre 2010 ÉTUDE
Plus en détailCours de Systèmes d Exploitation
Licence d informatique Synchronisation et Communication inter-processus Hafid Bourzoufi Université de Valenciennes - ISTV Introduction Les processus concurrents s exécutant dans le système d exploitation
Plus en détailStructure d un programme
Architecture des ordinateurs Cours 6 Structure d un programme 3 décembre 2012 Archi 1/30 Programme en Assembleur Archi 2/30 Sections de données programme en assembleur = fichier texte (extension.asm) organisé
Plus en détailC-JDBC. Emmanuel Cecchet INRIA, Projet Sardes. http://sardes.inrialpes.fr
Emmanuel Cecchet INRIA, Projet Sardes http://sardes.inrialpes.fr Plan Motivations Idées principales Concepts Caching Perspectives /ObjectWeb 15 octobre 2002 Emmanuel.Cecchet@inrialpes.fr 2 - Motivations
Plus en détailProblèmes liés à la concurrence
ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions
Plus en détailLes processus légers : threads. Système L3, 2014-2015 1/31
Les processus légers : threads Système L3, 2014-2015 1/31 Les threads Les threads sont des processus légers exécutés à l intérieur d un processus L exécution des threads est concurrente Il existe toujours
Plus en détailChapitre 1 - Langages de description d architectures matérielles hybrides
Chapitre 1 - Langages de description d architectures matérielles hybrides «Hélas, tout a déjà été dit et on arrive trop tard!» (La Bruyère) Résumé La méthode MEDEVER nécessite la description de l architecture
Plus en détailCours de Génie Logiciel
Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes
Plus en détailCours Informatique 1. Monsieur SADOUNI Salheddine
Cours Informatique 1 Chapitre 2 les Systèmes Informatique Monsieur SADOUNI Salheddine Un Système Informatique lesystème Informatique est composé de deux parties : -le Matériel : constitué de l unité centrale
Plus en détailVIII- Circuits séquentiels. Mémoires
1 VIII- Circuits séquentiels. Mémoires Maintenant le temps va intervenir. Nous avions déjà indiqué que la traversée d une porte ne se faisait pas instantanément et qu il fallait en tenir compte, notamment
Plus en détailUne bibliothèque de templates pour CUDA
Une bibliothèque de templates pour CUDA Sylvain Collange, Marc Daumas et David Defour Montpellier, 16 octobre 2008 Types de parallèlisme de données Données indépendantes n threads pour n jeux de données
Plus en détailCours de Base de Données Cours n.12
Cours de Base de Données Cours n.12 Gestion des transactions : contrôle de concurrence Elisabetta De Maria - http://www.i3s.unice.fr/ edemaria/ UFR Sciences et Laboratoire I3S, CNRS 2013-2014 Université
Plus en détailGestion répartie de données - 1 Duplication et cohérence
École Doctorale de Grenoble Master 2 Recherche Systèmes et Logiciel Gestion répartie de données : bref historique (1) Gestion répartie de données - 1 Duplication et cohérence Sacha Krakowiak Université
Plus en détailJava et les bases de données
Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples
Plus en détailLimitations of the Playstation 3 for High Performance Cluster Computing
Introduction Plan Limitations of the Playstation 3 for High Performance Cluster Computing July 2007 Introduction Plan Introduction Intérêts de la PS3 : rapide et puissante bon marché L utiliser pour faire
Plus en détailSYSTÈME DE GESTION DE FICHIERS
SYSTÈME DE GESTION DE FICHIERS - DISQUE 1 Les couches logiciels réponse requête Requêtes E/S Système E/S Pilote E/S Interruptions utilisateur traitement S.E. commandes S.E. S.E. matériel Contrôleur E/S
Plus en détailMétriques de performance pour les algorithmes et programmes parallèles
Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and
Plus en détailBases de données Cours 1 : Généralités sur les bases de données
Cours 1 : Généralités sur les bases de données POLYTECH Université d Aix-Marseille odile.papini@univ-amu.fr http://odile.papini.perso.esil.univmed.fr/sources/bd.html Plan du cours 1 1 Qu est ce qu une
Plus en détailSYSTÈME DE GESTION DE FICHIERS SGF - DISQUE
SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE C.Crochepeyre MPS_SGF 2000-20001 Diapason 1 Les couches logiciels réponse SGF requête matériel matériel Requêtes E/S Système E/S Pilote E/S Interruptions Contrôleur
Plus en détailIntroduction à la programmation concurrente
Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under
Plus en détailIntroduction aux algorithmes répartis
Objectifs et plan Introduction aux algorithmes répartis Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR http://sardes.inrialpes.fr/people/krakowia! Introduction aux algorithmes
Plus en détailContexte et motivations Les techniques envisagées Evolution des processus Conclusion
Vérification de logiciels par analyse statique Contexte et motivations Les techniques envisagées Evolution des processus Conclusion Contexte et motivations Specification Design architecture Revues and
Plus en détailUNIVERSITÉ D ORLÉANS ÉCOLE DOCTORALE MIPTIS MATHÉMATIQUES, INFORMATIQUE, PHYSIQUE THÉORIQUE ET INGÉNIEURIE DES SYSTÈMES. THÈSE présentée par :
UNIVERSITÉ D ORLÉANS ÉCOLE DOCTORALE MIPTIS MATHÉMATIQUES, INFORMATIQUE, PHYSIQUE THÉORIQUE ET INGÉNIEURIE DES SYSTÈMES Laboratoire d Informatique Fondamentale d Orléans THÈSE présentée par : Hélène COULLON
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détailChapitre 4 : Exclusion mutuelle
Chapitre 4 : Exclusion mutuelle Pierre Gançarski Juillet 2004 Ce support de cours comporte un certain nombre d erreurs : je décline toute responsabilité quant à leurs conséquences sur le déroulement des
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailADAPT: un modèle de transcodage des nombres. Une application des systèmes de production au développement
ADAPT: un modèle de transcodage des nombres Une application des systèmes de production au développement Référence Barrouillet, P., Camos, V., Perruchet, P., & Seron, X. (2004). A Developmental Asemantic
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailSélection du contrôleur
Démo CoDeSys - 1 - 1. Configuration de l environnement de travail : Lancer le logiciel CoDeSys Fichier Nouveau Lors de la première utilisation, une boîte de dialogue apparaît permettant la sélection du
Plus en détailInformatique Industrielle Année 2004-2005. Architecture des ordinateurs Note de cours T.Dumartin
Informatique Industrielle Année 2004-2005 Architecture des ordinateurs Note de cours T.Dumartin 1 GENERALITES 5 1.1 INTRODUCTION 5 1.2 QU ENTEND-T-ON PAR ARCHITECTURE? 5 1.3 QU EST CE QU UN MICROPROCESSEUR?
Plus en détailWindows Server 2008. Chapitre 1: Découvrir Windows Server 2008
Windows Server 2008 Chapitre 1: Découvrir Windows Server 2008 Objectives Identifier les caractéristiques de chaque édition de Windows Server 2008 Identifier les caractéristiques généraux de Windows Server
Plus en détailDonnées Réparties. Thibault BERNARD. thibault.bernard@univ-reims.fr
Données Réparties Thibault BERNARD thibault.bernard@univ-reims.fr Sommaire Introduction Gestion de la concurrence Reprise après panne Gestion des données dupliquées Sommaire Introduction Gestion de la
Plus en détailArchitecture d un service de partage de données modifiables sur une infrastructure pair-à-pair
Architecture d un service de partage de données modifiables sur une infrastructure pair-à-pair Mathieu Jan Mathieu.Jan@irisa.fr Superviseurs : Gabriel Antoniu, Luc Bougé, Thierry Priol {Gabriel.Antoniu,Luc.Bouge,Thierry.Priol}@irisa.fr
Plus en détailÉcole Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.
École Polytechnique de Montréal Département de Génie Informatique et Génie Logiciel Cours INF2610 Contrôle périodique Automne 2013 Date : 11 octobre 2013 de 18h à 20h Professeur : Boucheneb Hanifa Documentation
Plus en détailBases de données cours 1
Bases de données cours 1 Introduction Catalin Dima Objectifs du cours Modèle relationnel et logique des bases de données. Langage SQL. Conception de bases de données. SQL et PHP. Cours essentiel pour votre
Plus en détailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détail1 Lecture de fichiers
Programmation 1 Cours n 6 GB3, 2 nd semestre 2014-2015 Cours de Python Gilles Bernot 1 Lecture de fichiers Un fichier est une suite de caractères mémorisés sur le disque dur de la machine dans un endroit
Plus en détailProcessus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace
Processus 1) Contexte 2) Modèles de Notion de Points de vue Modèle fourni par le SX Opérations sur les 3) Gestion des Représentation des Opérations 4) Ordonnancement des Niveaux d ordonnancement Ordonnancement
Plus en détailJ2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation
J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation Cycle Ingénierie 2e année SIGL Dernière mise à jour : 19/10/2006 Christophe Porteneuve Threads Principes Cycle de vie Création java.lang.thread
Plus en détailGuide d Estimation Volumétrique des Logs
The Ver sat ile BI Sol ut ion! Guide d Estimation Volumétrique des Logs Ou comment estimer un volume de log Dans ce document, nous allons étudier les méthodes pour évaluer le volume de ligne de log d un
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailLeçon 1 : Les principaux composants d un ordinateur
Chapitre 2 Architecture d un ordinateur Leçon 1 : Les principaux composants d un ordinateur Les objectifs : o Identifier les principaux composants d un micro-ordinateur. o Connaître les caractéristiques
Plus en détailT. Gasc 1,2,3, F. De Vuyst 1, R. Motte 3, M. Peybernes 4, R. Poncet 5
Modélisation de la performance et optimisation d un algorithme hydrodynamique de type Lagrange-Projection sur processeurs multi-cœurs T. Gasc 1,2,3, F. De Vuyst 1, R. Motte 3, M. Peybernes 4, R. Poncet
Plus en détailNOTIONS DE RESEAUX INFORMATIQUES
NOTIONS DE RESEAUX INFORMATIQUES GENERALITES Définition d'un réseau Un réseau informatique est un ensemble d'équipements reliés entre eux afin de partager des données, des ressources et d'échanger des
Plus en détailLes bases de l optimisation SQL avec DB2 for i
Les bases de l optimisation SQL avec DB2 for i Christian GRIERE cgriere@fr.ibm.com Common Romandie 3 mai 2011 Les fleurs et les requêtes Lorsque l on veut planter de nouvelles fleurs dans un jardin il
Plus en détailCours 2: Exclusion Mutuelle entre processus (lourds, ou légers -- threads)
Cours 2: Exclusion Mutuelle entre processus (lourds, ou légers -- threads) Concurrence entre processus & Problème d Exclusion Mutuelle 1. Introduction 2. Solutions avec attente active, dites Sans Arbitrage
Plus en détail6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure
Plus en détailArchitecture des ordinateurs Introduction à l informatique
Architecture des ordinateurs Introduction à l informatique 17 septembre 2004 1 2 3 4 5 6 Les interrupteurs... 0V 5V Ce sont des composants électroniques qui laissent pser un courant principal lorsque la
Plus en détailPrésentation du module Base de données spatio-temporelles
Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes
Plus en détail