Initiation aux technologies de l’information

Slides:



Advertisements
Présentations similaires
Gaétan Hains Laboratoire d’informatique fondamentale d’Orléans
Advertisements

12 règles d’ergonomie web
RAS 3,1 Modéliser des situations à l’aide de relations et les utiliser afin de résoudre des problèmes avec et sans l’aide de technologie.
Module Systèmes d’exploitation
Produit Gammes Nomenclatures Modules Techniques Prix de Revient Prix de Vente Modules Techniques Client Marges Mise en route Temps Unitaire Prix (Ex:
Académie de Créteil - B.C.
Page 1 Retour sur le e- tourisme. Page 2 Quelques chiffres…
A l’issue des conseils de classe de 3ème,
Fabrice Lauri, François Charpillet, Daniel Szer
Access Frédéric Gava (MCF)
TECHNOLOGIE DES ORDINATEURS
Excel avancé Exercices corrigés Frédéric Gava (MCF)
Fonctions & procédures
Introduction aux réseaux informatiques
Serveur jeu Le serveur fait partie d'un logiciel de jeu en ligne multi joueur en architecture client serveur. Il répond à des demandes.
1 V-Ingénierie… La compétence au service de lexigence… vous présente.
Les 3 dimensio ns de la morale et de léthique (activité)
Le Grid Computing Par Frédéric ARLHAC & Jérôme MATTERA.
Le Grid Computing et son utilisation dans les entreprises et les industries Laurent CANTONE Résoul UNAL.
Applications et Techniques
PLAN du COURS Introduction Structure des Systèmes Informatiques
Performances 1 Évolution : Performance. Performances 2 Évolution : Mémoire.
A abstraction b assembleur c nombre binaire d bit e cache f UC g puce h compilateur i famille dordinateurs j contrôle k chemin de données l défaut m dé
Objectifs Nous allons concevoir une mise en œuvre contenant un noyau de jeu d’instructions. Nous verrons comment l’architecture de jeu d’instructions.
La diapo suivante pour faire des algorithmes (colorier les ampoules …à varier pour éviter le « copiage ») et dénombrer (Entoure dans la bande numérique.
1 Efficient Data and Program Integration Using Binding Patterns Ioana Manolescu, Luc Bouganim, Francoise Fabret, Eric Simon INRIA.
MARDI 19 NOVEMBRE 2013 NEVERS COMMUNIQUER AVEC UN PETIT BUDGET 1.
Par Clément en vacances sur la Côte d’Azur Le 17 décembre 2011
Anouar Abtoy Yasser El Khamlichi 1.
Le Concept. Régulation électronique LonWorks communicante pour application poutre froide.
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
SECURITE DU SYSTEME D’INFORMATION (SSI)
Interaction Homme Robot Sujet « 16/03/2012 » Réalisé par :
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
Savoir partager Ecole de Lanta
1 WEB EFFICACITE 3 WHAT IS WEB 2.0 ? 4 SIMPLICITE.
MP2 - Mathématiques Ordinateurs et calculateurs Quand a-t-on construit le premier ordinateur ? Qui était Colossus ? Quest-ce aujourdhui un calculateur.
Gestion des Périphériques
Synchronisation et communication entre processus
Serveurs Partagés Oracle
Les réseaux informatiques
1.2 COMPOSANTES DES VECTEURS
Gestion des bases de données
SCIENCES DE L ’INGENIEUR
@SSR – Installation des applications eduscol.education.fr/securite - février 2007 © Ministère de l'Éducation nationale, de l'Enseignement supérieur et.
Louis la grenouille Paroles et musique: Matt Maxwell.
Programmation concurrente
Notre calendrier français MARS 2014
Introduction IFT6800 Jian-Yun Nie.
1 IFT 6800 Atelier en Technologies dinformation Chapitre 1 Introduction.
Annexe 1 VISITE SUR
Hybridation sp3 du carbone
C'est pour bientôt.....
Veuillez trouver ci-joint
Systèmes d’informations : Définition, Composantes, Rôles et Approches.
SUJET D’ENTRAINEMENT n°4
Introduction IFT6800 – E2008 Pierre Poulin.
Le combat intérieur Romains
Informatique 1. Les applications de l’informatique
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
CALENDRIER-PLAYBOY 2020.
Algorithmes Parallèles et Systèmes Réparties
1.
La formation des maîtres et la manifestation de la compétence professionnelle à intégrer les technologies de l'information et des communications (TIC)
Algorithmes Parallèles et Systèmes Réparties
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Le Traitement Informatique des Données Scientifiques Oleg LODYGENSKY Etienne URBAH LAL, Univ Paris-Sud, IN2P3/CNRS,
Programmation des systèmes réparties Frédéric Gava (MCF) LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne.
Transcription de la présentation:

Initiation aux technologies de l’information Frédéric Gava (MCF) gava@univ-paris12.fr LACL, bâtiment P2 du CMC, bureau 221 Université de Paris XII Val-de-Marne 61 avenue du Général de Gaulle 94010 Créteil cedex

Architecture parallèle et futur de l’informatique

Architecture parallèles

Premières machines 1976 : Cray I: refroidi au « gaz liquide » 1981 : Cyber 205, 50 Mflops 1986 : Cray X-MP (713 MFlops) 1991 : Cray Y-MP (16 GFlops) 1995-2006 : Grappes de PC Super-ordinateurs parallèles et vectoriels Calcul globalisé ou grilles de calcul géographiquement distribuées

Exemple grappe de PCs

Une grappe de l’INRIA

Super-ordinateurs Le earth-simulator au Japon, environ 5000 processeurs…Le Tera-10 du CEA (France) est classé par mis les 5 plus puissantes machines…

Le parallélisme ? On distribue les données sur p=4, 32, 5000 ordinateurs : Chacun calcule sur sa part des données On s’échange les résultats On recommence si nécessaire On espère que le calcul soit complété p fois plus vite : Mais: l’échange des données prend du temps … temps relatif inchangé depuis plus de 20 ans Échange 20, 100, 1000 x plus lent qu’un calcul … s’il n’y a pas de bouchon !

Paralléliser c’est distribuer Données es D on né

Paralléliser c’est accélérer U U L L C C A

Mais aussi communiquer et synchroniser D é o n n e s D o é e s n n 3 cons. 4 voyel. (3,4) (3,4) (3,4) (3,4)

Comment mesurer ? PECA Calcul Synchronisation (latence) Données G Temps de communication Synchronisation (latence) Données L Cela limite les performances… PECA

Vitesse de calcul Loi de Moore : l’efficacité des processeurs double tout les 18 mois (normalement vrai jusqu’en 2017 mais après ?) Kilo Mega Giga Tera

Vitesse des communications PECA CRAY T3E, haut de gamme circa 2002  Nb Processeurs Mflops/s 1/L M/s 1/g Mmots/s t3e-256(2) 2000 1,1 260 t3e-256(4) 4000 0,9 382 t3e-256(8) 7000 0,6 327 t3e-256(16) 15000 0,4 253 t3e-256(24) 2200 0,47 222 t3e-256(32) 28000 0,41 177 Même la fibre optique n’y peut rien car la vitesse de la lumière est finie et donc communiquer coûte cher…

Le problème de l’efficacité Le but faire le total (addition) d’un ensemble de nombre donnée ; le nombre d’entiers à additionner sera toujours le même On va répartir ces nombres suivant deux nombres de processeurs (humains), 5 et 10 Pour cette expérience, je vais demander 10 volontaires Chacun des volontaires fait la somme des entiers qui lui sont alloués Dès que le volontaire a terminé, il se met près de moi Puis les volontaires se réunissent pour faire la somme total On analysera ensuite l’efficacité globale des volontaires

Exemple Volontaire : 1 2 3 4+8 5+9 2+1 Total : 12+14+3=29

Total avec 5 processeurs Volontaire : 1 2 3 4 5 4+8+7+3 5+9+6+1 2+1+9+8 3+4+5+1 6+7+4+1

Total avec 10 processeurs Volontaire : 1 2 3 4 5 6 7 8 9 10 4+8 5+6 9+2 1+7 3+8 4+5 1+6 3+9 7+4 2+3

Moralité Les communications coûtent cher La synchronisation aussi Ce n’est pas parce que l’on a plus de processeur que le calcul sera plus rapide : on parle d’efficacité de l’algorithme parallèle En gros : plus on a de processeurs plus il faut de gros problèmes sinon on fait perdre du temps au processeurs (par rapport à une machine parallèle avec moins de processeurs)

Différentes architectures (1) On peut classer les machines parallèles suivant leur efficacité, leur nombre de processeurs, le types des processeurs/réseaux/mémoires etc. On peut néanmoins et grossièrement classer les machines parallèles suivant 2 catégories : Les machines à mémoire partagées Les machines à mémoire distribuées Le modèle client/serveur

Mémoires partagées Mémoire Mémoire Réseau Bus Bus PECA Les processeurs « multi-core » comme les « dual-core » : les processeurs accède directement à la mémoire vive ; très efficace mais encore coûteux et limité en nombre de processeurs (16 maxi dans le commerce) Processeur Mémoire Bus Ici, c’est l’apanage des grosses, commerciales et coûteuse (100k à 1M euros) machines massivement parallèles comme les Cray T3E, SGI Origin 2000, IBM SP avec 64, 128, 256 processeurs. Mais très efficaces. Les processeurs accèdent tous à une mémoire vive via un réseau => communications aussi efficaces que lecture mémoire Processeur Mémoire Bus Réseau

Mémoires distribués Réseau Réseaux Processeur Mémoire Machine esclave PECA Les processeurs communiquent via le réseaux ; c’est le domaine des grappes de machines. Possibilité de machines peu cher avec un TRES grand nombre de processeurs mais néanmoins, encore aujourd’hui, des communications plus lentes que précédemment. Possibilité de construire pour pas cher sa propre machine parallèle… Processeur Mémoire Réseau Machine esclave Réseaux Machine maître Une machine maître (serveur) distribue les données et les calculs aux esclaves (client) et le maîtres récolte les résultats. Ce modèle de machine parallèles a été utilisé par exemple pour le Généthon, SETI@HOME etc. en utilisant les temps de calculs non-utilisé par les particuliers. On a donc une très grande capacité de calcul mais avec les problèmes suivant : il faut que le problème soit trivialement décomposable, il faut vérifier les données calculés pour éviter les pirates (on fait de la redondance de calcul puis on prend le résultat le plus rendu), communications parfois très coûteuses.

Différentes architectures (2) On peut aussi classer les machines parallèles suivant les programmes parallèles qui y sont utilisés Pour cela, on classe suivants les instructions et les données Single Instruction Multiple Instructions Single Data SISD MISD Multiple Data SIMD MIMD Machine Séquentielle Grappe de machines

SIMD PECA Chaque instruction du processeur manipule parallèlement (dans les circuits imprimés) plusieurs données : on a donc plusieurs calculs à la fois pour chaque instruction On trouve ce type d’instructions dans les accélérateurs graphiques (du processeur ou de la carte graphique) : on souhaite manipuler plusieurs pixels/polygones à la fois les processeurs avec co-processeurs arithmétiques : on souhaite calculer plusieurs additions à la fois pour accélérer les gros calculs numériques etc.

MISD PECA Plusieurs instructions manipulent parallèlement une seule et unique donnée !? En fait possible avec des programmes dis en « pipe-line » : des données circulent sur un circuits de processeurs (ou de processus, c’est à dire avec plusieurs processus sur un même processeur) et chaque processus ne fait qu’une seule et unique opération Exemple : Processus 1 calcul +1 Processus 2 calcul *2 Processus 3 calcul +3 ? 1, 5, 6 10, 23 Flux de données Données initiales Données finales

Futurs de l’informatique (qui vivra verra…)

Les grilles de calcul Un « graal » (super)-ordinateur distribuées géographiquement Du calcul à la demande, comme de l’électricité Nombreux projets et réalisations : GRID’5000 Grille du CERN Globus etc.

Taxonomie Une machine parallèle=plusieurs processeurs Meta-computing = plusieurs machines parallèles Calcul pair-à-pair = chaque machines est relié à une ou plusieurs autres machines (échanges de fichiers) Modèle Clients-Serveurs = des serveurs répartissent les calculs à des clients ; ceux-ci se connectent, calculent, redonnent le résultats aux serveurs etc. Global-computing = toutes les machines du mondes vue comme une seule ENORME machine (le « graal ») Mobile-computing = un utilisateur veut lancer une application ; un agent informatique se « balade » sur le net pour trouver une machine suffisamment puissante pour exécuter cette application ; puis revient sur la machine de l’utilisateur pour lui fournir le résultat etc.

Les problèmes Sécurité : Performance : applications détruisant les fichiers etc. autorisation sur quelles machines ? sûreté d’exécution : une application plantant la/les machine(s) pour gêner les autres applications etc. Performance : prédiction des communications… répartition des ressources physiques une petite application (calculette) a t’elle besoin d’autant de ressource ? sécurité : une application faisant des millions de calculs inutile pour gêner les autres Portabilité : grande hétérogénéité des machines Tolérance aux « pannes » : comment faire quand une machine se déconnecte (panne de courtant etc.) ? La recherche en informatique y travaille (voir site LACL par ex.)

Applications (1) Dynamique moléculaire : on simule une nanoseconde sur 10000 atomes

Applications (2) Traitement d’image, et reconnaissance de formes 3D : Reconnaître un visage Comparer deux voix Comparer une image avec la carte Michelin, compléter l’image SPOT par temps couvert etc.

Applications (3) Simulation aérodynamique et météo

Applications (4) Réalité virtuelle et murs d’images : simulation interactive en ingénierie Urbanisme virtuelle Simulation de crues de fleuves jeux vidéo etc.

Applications (5) Analyse de la structure du web : Qui parle de qui sur les pages perso ? Que peut-on savoir sur mon entreprise via le web et par regroupement d’information ? Quelles sont les réseaux pirates ? Sécurité informatique : ce protocole de commerce est-il vraiment sûr ? Quel effet aurait une panne sur des informations critiques ? Le protocole de vote électronique est-il fiable ? Un pirate peut-il tous casser dans le réseau de mon entreprise ? Et tellement d’autres choses… Intelligence artificiel (interaction homme-machine comme un e-vendeur ou apprentissage automatique pour la recherche de pétrole d’après des relevés topographiques et géologiques) Calcul formelle, démonstration automatiques, assistant de preuves (les sujets de Bac S peuvent être entièrement résolue par des machines) etc.