Méthodes et outils pour l implantation d algorithmes temps réel sur architecture multi-dsp
|
|
|
- Irène Bédard
- il y a 9 ans
- Total affichages :
Transcription
1 Méthodes et outils pour l implantation d algorithmes temps réel sur architecture multi-dsp Thierry Grandpierre ([email protected]) Collaboration ESIEE/INRIA
2 Plan Contexte & objectifs Modélisation Architecture Algorithme Implantation Optimisation de l'implantation Génération automatique d exécutif Conclusion & perspectives
3 Contexte Applications : automobile, robotique mobile, télécom, traitement d'images... Algorithmes : contrôle-commande, TSI Réactif : stimulus - opération - réaction Temps Réel : Temps de réaction borné : latence Période des stimuli bornée : cadence Distribué : puissance calcul, modularité, Embarqué : minimisation des ressources
4 Objectifs Sécurité de conception : sémantique langages synchrones + conservation des propriétés lors de l'implantation Optimisation : latence=cadence, taille archi. Prototypage rapide : réduction du cycle de développement Génération de code de série Méthodologie
5 INRIA : Méthodologie Adéquation Algorithme Architecture Approche globale Modèle unifié de graphes Algorithme : parallélisme potentiel Architecture : parallélisme disponible Implantation : transformations de graphes Adéquation : choix d implantation optimisée Génération automatique d'exécutifs taillés sur mesure, basés sur ordonnancement hors-ligne des calculs et des communications
6 Méthodologie AAA et logiciel SynDEx Algorithme graphe de dépendances Utilisateur Contraintes Adéquation Distribution/Ordonnancement Heuristiques Architecture graphe multiprocesseurs hétérogène Prédiction Performances Génération automatique d'exécutif temps réel Synchronized Distributed Executive
7 Méthodologie AAA : logiciel SynDEx
8 Modèle d'architecture : graphe orienté Sommets (FSM) : Opérateur : exécution séquentielle opns de calcul Communicateur : exéc. séquentielle opns comm. Mémoire avec ou sans arbitre, RAM ou SAM Bus/mux/démux avec ou sans arbitre : Bus/mux/démux : sélect. une mémoire parmi plusieurs Bus/mux/démux/arbitre : arbitre accès à mém. partagée Arcs orientés : transferts de données
9 Exemple de graphe d'architecture processeur1 Opr1 processeur2 Opr2 processeur3 Opr3 RAM D/P Com1b SAM Com2b RAM D/P RAM D RAM D/P Com1a Com2a Com3a Comm. Passage msg SAM RAM D Comm. mem. partagée RAM D/P processeur4 Opr4
10 Architecture : capture d'écran SynDEx v6.6.2
11 Modèle d'algorithme : hyper-graphe orienté Sommet : opération conditionnée ou non Hyper-arc orienté : dépendance de données (ordre partiel d'exéc.) ou dép.de conditionnement Répétition infinie d'un sous-graphe (réactif) Répétition finie d'un sous-graphe (boucle) Factorisation = Graphe flot de données conditionné Issu des Langages Synchrones (via DC), de Scicos, AVS, CamlFlow
12 Exemple d'algorithme : égaliseur adaptatif filtre adap retard gensig adap coeff filtre sub visu Itération n Filtrea Filtrea Filtrea gensig adap gensig adap gensig adap filtre sub filtre sub filtre sub coeff coeff coeff visu visu visu
13 Algorithme : capture d'écran SynDEx v6.6.2
14 Algorithme avec conditionnement : capture d'écran SynDEx v6.6.2 Sous-graphe pour Entrée x = 1 Sous-graphe pour Entrée x = 2 Sous-graphe pour Entrée x = 4
15 Modèle d'implantation Toutes les implantations possibles décrites par la composition de 3 relations binaires : rout o distrib o ordon (Gal, Gar) (Gal, Gar) Routage : calcul de toutes les routes Distribution : allocation spatiale : Partition des opérations en fonction des opérateurs Partition des arcs inter-partition en fonction des routes Création et allocation : opns de comm., alloc./mém. Ordonnancement : allocation temporelle Partition d'opérations : ordre partiel ordre total
16 Distribution / Ordonnancement in processeur1 processeur2 RAM RAM Opr1 Com1a Com2a Opr2 D/P SAM D/P calc1 calc2 allocp allocdl allocp allocdl allocd allocd allocd allocd allocp allocdl in send send allocd calc1 calc2 allocd receive receive out allocd allocd allocp allocdl out
17 Optimisation latence / ressources Adéquation : implantation optimisée = choix d'implantation hors ligne qui minimise latence C est un problème NP-complet : heuristiques Lentes itératives : voisinage local, global Rapides (prototypage) : gloutonne Fonction coût pression d ordonnancement Ordonnancement : sans préemption Meta heuristique pour minimiser les ressources
18 Optimisation mémoire opr1 o1 o2 o3 o4 Ram D/P all.po1 all.dlo1 all.d_o1o2 all.po2 all.dlo2 all.d_o2o3 all.po3 all.dlo3 all.d_o3o4 all.po4 all.dlo4 Comr1a ESPACE MEMOIRE RAM données données communiquées locales programmes alias.d_o3o4 all.d_o1o2 all.d_o2o3 all.d_o3o4 all.dlo1 all.dl2 all.dlo3 all.dlo4 all.po4 all.po3 all.po2 all.po1
19 Implantation optimisée : capture d'écran SynDEx v6.6.2
20 Génération d'exécutifs Exécutif : supporte exéc. de l'algo. sur l'archi.= séquencement, gestion mém., comm., synchro. Taillé sur mesure : Minimise surcoût spatial et temporel Implant. conforme aux optimisations(com., mém.) Sans inter-blocage, garantie ordre partiel graphe algo. Basé sur macro-code Indépendant du processeur, portabilité Basé sur des bibliothèques génériques dépendantes des processeurs (pas de RTOS)
21 Génération de macro code processeur1 Opr1 in_ini loop Suc-E in Pre-F endloop in_end RAM D/P s_empty s_full in/calc Comr1a loop Suc-F send Pre-E endloop processor_( opr1, type opr1) semaphores_(s_empty, s_full) alloc_(type_in/calc, in/calc..) thread_(comr1a) pre0 (s_empty) loop_ sucf(s_full) send(in/calc) pree(s_empty) endloop_ endthread_ main_ in_ini ini( ( ) spawn_thread(com1ra) loop_ suce(s_empty) in(in/calc) pref(s_full) endloop_ in_end ( ) endmain_ endprocessor_
22 Compilation du macro code processor_( opr1,.) semaphores_(s_empty ) alloc_(type_in/calc...) thread_(comr1a) pre0 (s_empty) loop_ sucf(s_full) send(in/calc) pree(s_empty) endloop_ endthread_ main_ in_ini ini( ( ) spawn_thread(com1ra) loop_ suce(s_empty) in(in/calc) pref(s_full) endloop_ in_end ( ) endmain_ endprocessor_ BIBLIOTHEQUE GENERIQUE D'EXECUTIF indépendante de l architecture (syndex.m4x) MACRO PROCESSEUR BIBLIOTHEQUE de macros spécifiques à l application (nomappli.m4x) src BIBLIOTHEQUE GENERIQUE D EXECUTIF spécifique à l architecture (Unix.m4x,Tcp.m4x Can.m4x, C6x.m4x) COMPILATEUR BIBLIO. de fonctions spécifiques à l application (fonctions.c ou.o) Executable1 Executable2
23 Génération d'exécutif : capture d'écran SynDEx v6.6.2
24 Génération d'exécutif include(syndex.m4x)dnl processor_(u,root, ega2u,syndex v5, 2001) Allocation mémoire Sequence de communication semaphores_( sub_o_empty_l0_root, sub_o_full_l0_root, filt_o_empty_l0, filt_o_full_l0, gensig_o_empty_l0_p, gensig_o_full_l0_p, ) alloc_(float,sub_o) alloc_(float,gensig_o) alloc_(float,wind_o, 9) alloc_(float,coef1_a, 9) alloc_(float,filt_o) thread_(tcp,l0, root, p) loaddnto_(, p) Pre0_(gensig_o_empty_L0_p) Pre0_(filt_o_empty_L0) loop_ Suc1_(gensig_o_full_L0_p) send_(gensig_o, U,root,p) Pre0_(gensig_o_empty_L0_p) Suc1_(filt_o_full_L0) send_(filt_o, U,root,p) Pre0_(filt_o_empty_L0) Suc1_(sub_o_empty_L0_root) recv_(sub_o, U,p,root) Pre0_(sub_o_full_L0_root) endloop_ endthread_ 1/2 synchro Emission reception synchro Sequence de calcul main_ spawn_thread_(l0) gensig() wind(wind_o) coef1(coef1_a) visu() Pre1_(sub_o_empty_L0_root) loop_ Suc0_(gensig_o_empty_L0_p) Opérations gensig(gensig_o) «gensig» Pre1_(gensig_o_full_L0_p) shift_(wind_o, gensig_o) Opérations Suc0_(filt_o_empty_L0) «gdotprod gdotprod(coef1_a, wind_o, filt_o)» Pre1_(filt_o_full_L0) Suc0_(sub_o_full_L0_root) visu(sub_o) Pre1_(sub_o_empty_L0_root) endloop_ visu() wind(wind_o) gensig() wait_endthread_(l0) endmain_ endprocessor_ 2/2
25 Association macro <==> fnct C # Fonction Reduction nomappli.m4x Hauteur (int) Largeur (int) divert void reduction(int height, unsigned char *im, int width, unsigned short *imreduc); divert(-1) def (`reduction',`ifelse(mgc,loop, `proto_(int?$1, uchar[65536]?$3, int?$2, ushort[16384]!$4) Ccall_(void, `reduction', int $1, uchar *$3, int $2, ushort *$4)')') reduction(cst_h, cst_l, capt_o, reduc1_o) Opération «Reduc1» (macro : reduction ) Image (uchar) Image (ushort) (Ccall et proto : définition dans syndex.m4x et c.m4x) void reduction(int height, unsigned char *im, int width, unsigned short *imreduc) { int i, j, k; for (j = 0;j < height; j++) { for (i = 0;i < width; i++) { k=(j >> 1)*(width >> 1)+(i >> 1); imreduc[k] += im[j*width+i]; } } } fonctions.c
26 Conclusion Extension de AAA aux circuits reconfigurables : thèses ESIEE : A. Dias (achevée), L. Kaouane (en cours) Développement à l'esiee de la version SynDEx-IC (disponible à la rentrée) Extension aux architectures mixtes FPGA- DSP : Co-design, SoC (Excalibur, Virtex Pro II..) Prochaine thèse ESIEE en septembre
27 Conclusion Architectures programmables (proc., DSP, µcontlr.) Algorithmes (Graphe flot de données) Architectures reconfigurables Mono composant multi composants Adéquation (heuristiques pour programmable) Adéquation (heuristiques mono-circuit) Adéquation (heuristiques multi-circuits) INRIA Génération d exécutifs distribués ESIEE Génération VHDL synthétisable (thèse L. Kaouane)
28 Perspectives Algorithmes (Graphe flot de données) Composants programmables Architectures MIXTES Composants reconfigurables (modèle unique) Adéquation mixte (heuristiques pour programmable) (heuristiques pour multi-circuits) (unification des modèles d implantation et des fonctions de coût pour l optimisation) Génération d exécutifs distribués communications Génération VHDL synthétisable
Thème 3 Conception et vérification d architectures de systèmes sur puce
Thème 3 Conception et vérification d architectures de systèmes sur puce Conception et simulation Frédéric Pétrot Vérification Laurence Pierre Conception et vérification d architectures de systèmes sur
ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES
ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES AILTON F. DIAS, MOHAMED AKIL, CHRISTOPHE LAVARENNE, YVES SOREL CNEN/CDTN Divisão de Computação e Informação, CP 941-012-970 Belo
MAC-TC: programmation d un plate forme DSP-FPGA
MAC-TC: programmation d un plate forme DSP-FPGA Tanguy Risset avec l aide de: Nicolas Fournel, Antoine Fraboulet, Claire Goursaud, Arnaud Tisserand - p. 1/17 Plan Partie 1: le système Lyrtech Introduction
Techniques d ordonnancement pour les SoC
Techniques d ordonnancement pour les SoC Pierre Boulet équipe WEST [email protected] Ordonnancement DEA informatique Lille p. 1/104 Plan Ordonnancement de tâches Placement sur SoC Ordonnancement de
Une 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
INITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Architecture 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?
Masses de données. 1. Introduction 2. Problématiques 3. Socle de formation (non présenté) 4. Liens avec Formation INSA
Masses de données 1. Introduction 2. Problématiques 3. Socle de formation (non présenté) 4. Liens avec Formation INSA Rédacteurs : Mjo Huguet / N. Jozefowiez 1. Introduction : Besoins Informations et Aide
Introduction à 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
Sanity Check. bgcolor mgcolor fgcolor
Sanity Check bgcolor mgcolor fgcolor 0 1 2 3 4 5 6 7 8 9 10 Compilation pour cibles hétérogènes: automatisation des analyses, transformations et décisions nécessaires, François Irigoin et Ronan Keryell
IRL : Simulation distribuée pour les systèmes embarqués
IRL : Simulation distribuée pour les systèmes embarqués Yassine El Khadiri, 2 ème année Ensimag, Grenoble INP Matthieu Moy, Verimag Denis Becker, Verimag 19 mai 2015 1 Table des matières 1 MPI et la sérialisation
2015 // 2016. des formations. programme. Retrouvez toutes ces informations sur enseirb-matmeca.bordeaux-inp.fr
programme des formations Filière Électronique...2 Filière Informatique...3 Filière Mathématique et Mécanique...4 Filière Télécommunications...5 Filière Réseaux et Systèmes d Information...6 Filière Systèmes
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
Vers du matériel libre
Février 2011 La liberté du logiciel n est qu une partie du problème. Winmodems Modem traditionnel Bon fonctionnement Plus cher Electronique propriétaire Blob sur DSP intégré au modem Bien reçu par les
UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE 2014-2018
UFR d Informatique FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE 2014-2018 Objectif L UFR d informatique propose au niveau du master, deux spécialités sous la mention informatique
Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Cours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas [email protected] Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Introduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Parallélisme et Répartition
Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique [email protected] web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre
Conception 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
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples
Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation
Mesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]
Mesure de performances [Architecture des ordinateurs, Hennessy & Patterson, 1996] Croissance des performances des microprocesseurs Avant le milieu des années 80, le gain dépendait de la technologie. Après,
Conception et Intégration de Systèmes Critiques
Conception et Intégration de Systèmes Critiques 15 12 18 Non 50 et S initier aux méthodes le développement de projet (plan de développement, intégration, gestion de configuration, agilité) Criticité temporelle
1 Mesure de la performance d un système temps réel : la gigue
TP TR ENSPS et MSTER 1 Travaux Pratiques Systèmes temps réel et embarqués ENSPS ISV et Master TP1 - Ordonnancement et communication inter-processus (IPC) Environnement de travail Un ordinateur dual-core
ARDUINO DOSSIER RESSOURCE POUR LA CLASSE
ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée
Programme de la 1ère année
Programme de la 1ère année de master informatique Recopié du Syllabus M1 Informatique. 2004-2005 (UPS Toulouse) TC1 - Conception et Programmation Parallèle et Orientée Objet (96h) Objectif : Ce cours a
UE C avancé cours 1: introduction et révisions
Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple
Exécutif temps réel Pierre-Yves Duval (cppm)
Exécutif temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 Plan Exécutif Tâches Evénements et synchronisation Partage de ressources Communications
Temps Réel. Jérôme Pouiller <[email protected]> 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
UE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie [email protected] 2 Programmation Impérative
Simulation de graphes de tâches
Christophe THIERY ESIAL 2A - 2005/2006 Simulation de graphes de tâches dans SimGrid 3 Rapport de stage de deuxième année - ESIAL LORIA - Laboratoire Lorrain de Recherche en Informatique et ses Applications
Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.
Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local
Séminaire RGE REIMS 17 février 2011
Séminaire RGE REIMS 17 février 2011 ADACSYS Présentation des FPGA Agenda Spécificité et différences par rapport aux autres accélérateurs Nos atouts Applications Approche innovante Document confidentiel
Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image
IN52-IN54 A2008 Algorithme des fourmis appliqué à la détection et au suivi de contours dans une image Etudiants : Nicolas MONNERET Alexandre HAFFNER Sébastien DE MELO Responsable : Franck GECHTER Sommaire
Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)
Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 - Evénements et architectures - Spécifications de performances
QUESTION 1 {2 points}
ELE4301 Systèmes logiques II Page 1 de 8 QUESTION 1 {2 points} En se servant de paramètres électriques donnés dans le Tableau 1 ci-dessous, on désire déterminer la fréquence d opération du compteur présenté
Resolution limit in community detection
Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.
Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction
PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS Depuis SAS 9.2 TS2M3, SAS propose un nouveau langage de programmation permettant de créer et gérer des tables SAS : le DS2 («Data Step 2»). Ces nouveautés
UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.
UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases
PROGRAMME 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,
WEA Un Gérant d'objets Persistants pour des environnements distribués
Thèse de Doctorat de l'université P & M Curie WEA Un Gérant d'objets Persistants pour des environnements distribués Didier Donsez Université Pierre et Marie Curie Paris VI Laboratoire de Méthodologie et
Processus! 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
Exclusion Mutuelle. Arnaud Labourel Courriel : [email protected]. Université de Provence. 9 février 2011
Arnaud Labourel Courriel : [email protected] Université de Provence 9 février 2011 Arnaud Labourel (Université de Provence) Exclusion Mutuelle 9 février 2011 1 / 53 Contexte Epistémologique
Une 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
Introduction au temps réel
Introduction au temps réel [email protected] Version 2.0 Définition d un système temps réel Un système temps réel se compose d'un ou plusieurs sous-systèmes devant répondre en un temps fini et spécifié
Qualité du logiciel: Méthodes de test
Qualité du logiciel: Méthodes de test Matthieu Amiguet 2004 2005 Analyse statique de code Analyse statique de code Étudier le programme source sans exécution Généralement réalisée avant les tests d exécution
Algorithmique I. [email protected] [email protected] [email protected]. Algorithmique I 20-09-06 p.1/??
Algorithmique I [email protected] [email protected] [email protected] Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes
Loris MARCHAL Laboratoire de l Informatique du Parallélisme Équipe Graal Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes Thèse réalisée sous la direction
Initiation. àl algorithmique et à la programmation. en C
Initiation àl algorithmique et à la programmation en C Initiation àl algorithmique et à la programmation en C Cours avec 129 exercices corrigés Illustration de couverture : alwyncooper - istock.com Dunod,
Programmation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Les diagrammes de modélisation
L approche Orientée Objet et UML 1 Plan du cours Introduction au Génie Logiciel L approche Orientée Objet et Notation UML Les diagrammes de modélisation Relations entre les différents diagrammes De l analyse
Introduction à 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
Introduction aux systèmes temps réel
Introduction aux systèmes temps réel Frank Singhoff Bureau C-203 Université de Brest, France LISyC/EA 3883 [email protected] UE applications de l informatique, Université de Brest Page 1/22 Plan du
Université Libre de Tunis
Ingénieur: Génie Informatique Code et Intitulé des Matières Enseignées Plan d'etudes : Semestre 1 S1-01 Algorithmique et Structures de Données 1 S1-02 Programmation C S1-03 Logiques Mathématiques S1-04
Le Collège de France crée une chaire pérenne d Informatique, Algorithmes, machines et langages, et nomme le Pr Gérard BERRY titulaire
Communiquédepresse Mars2013 LeCollègedeFrancecréeunechairepérenned Informatique, Algorithmes,machinesetlangages, etnommeleprgérardberrytitulaire Leçoninauguralele28mars2013 2009avait marquéunpas importantdans
INTRODUCTION 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
Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Problè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
Optimisation for Cloud Computing and Big Data
1 / 23 Optimisation for Cloud Computing and Big Data Olivier Beaumont, Lionel Eyraud-Dubois 2 / 23 Aujourd hui Problèmes de fiabilité on va oublier la dynamicité Placement de VMs en programmation par contraintes
INTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Modélisation multi-agents - Agents réactifs
Modélisation multi-agents - Agents réactifs Syma cursus CSI / SCIA Julien Saunier - [email protected] Sources www-lih.univlehavre.fr/~olivier/enseignement/masterrecherche/cours/ support/algofourmis.pdf
Apprentissage Automatique
Apprentissage Automatique Introduction-I [email protected] www.lia.univ-avignon.fr Définition? (Wikipedia) L'apprentissage automatique (machine-learning en anglais) est un des champs
Coopération de modèles de temps
Coopération de modèles de temps Gérard Berry Collège de France Chaire Algorithmes, machines et langages http://www.college-de-france.fr/site/gerard-berry [email protected] Cours 6, 19 mars
Vérification formelle de la plate-forme Java Card
Vérification formelle de la plate-forme Java Card Thèse de doctorat Guillaume Dufay INRIA Sophia Antipolis Cartes à puce intelligentes Java Card : Environnement de programmation dédié. Dernières générations
Introduction à l informatique temps réel Pierre-Yves Duval (cppm)
Introduction à l informatique temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 -Définition et problématique - Illustration par des exemples -Automatisme:
Lier Erlang avec d autres langages de programmation
16 Lier Erlang avec d autres langages de programmation Les logiciels actuels, quelle que soit leur taille, sont souvent écrits dans plusieurs langages de programmation. Généralement, les pilotes de périphériques
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Exercices INF5171 : série #3 (Automne 2012)
Exercices INF5171 : série #3 (Automne 2012) 1. Un moniteur pour gérer des ressources Le moniteur MPD 1 présente une première version d'un moniteur, exprimé en pseudo-mpd, pour gérer des ressources le nombre
Cours 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
Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable
Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable Pierre Olivier*, Jalil Boukhobza*, Jean-Philippe Babau +, Damien Picard +, Stéphane Rubini + *Lab-STICC, + LISyC, Université
as Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
ACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration
Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...
Master (filière Réseau) Parcours Recherche: Systèmes Informatiques et Réseaux (RTS)
Master (filière Réseau) Parcours Recherche: Systèmes Informatiques et Réseaux (RTS) Responsables: Tanguy Risset & Marine Minier [email protected] [email protected] http://master-info.univ-lyon1.fr/m2rts/
Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle
2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle [email protected] http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation
Génération de code binaire pour application multimedia : une approche au vol
Génération de binaire pour application multimedia : une approche au vol http://hpbcg.org/ Henri-Pierre Charles Université de Versailles Saint-Quentin en Yvelines 3 Octobre 2009 Présentation Présentation
INGENIERIE DES SYSTEMES INFORMATIQUES - PARCOURS : MOBILITE ET CLOUD COMPUTING
INGENIERIE DES SYSTEMES INFORMATIQUES - PARCOURS : MOBILITE ET CLOUD COMPUTING Préparez ce diplôme à l école de d ingénierie de l IGA OBJECTIFS DE LA FORMATION Dans un contexte de mutation économique et
Analyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
1 Description générale de VISFIELD
Guide d utilisation du logiciel VISFIELD Yann FRAIGNEAU LIMSI-CNRS, Bâtiment 508, BP 133 F-91403 Orsay cedex, France 11 décembre 2012 1 Description générale de VISFIELD VISFIELD est un programme écrit
GPA770 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
Mémoire de Fin d Etudes
Mémoire de Fin d Etudes Pour l Obtention du Diplôme d Ingénieur d Etat en Informatique Présenté par : MOSTEFA MERIEM Option : Système distribué Session Juin 2009 THEME PLACEMENT DES TACHES REPETITIVES
Cours de Master Recherche
Cours de Master Recherche Spécialité CODE : Résolution de problèmes combinatoires Christine Solnon LIRIS, UMR 5205 CNRS / Université Lyon 1 2007 Rappel du plan du cours 16 heures de cours 1 - Introduction
1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
COMMANDER A DISTANCE LE ROBOT-PONG ETUDE DE LA TELECOMMANDE (2 nde PARTIE)
SIN STI2D - Système d'information et Numérique TD TP Cours Synthèse Devoir Evaluation Projet Document ressource COMMANDER A DISTANCE LE ROBOT-PONG ETUDE DE LA TELECOMMANDE (2 nde PARTIE) 1 GESTION DES
Conception 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
physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178
Thèse no. 7178 PROBLEMES D'OPTIMISATION DANS LES SYSTEMES DE CHAUFFAGE A DISTANCE présentée à l'ecole POLYTECHNIQUE FEDERALE DE ZURICH pour l'obtention du titre de Docteur es sciences naturelles par Alain
1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)
1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d
Programme détaillé BTS INFORMATIQUE DE GESTION DIPLÔME D ETAT. Objectifs de la formation. Les métiers. Durée de la formation
Objectifs de la formation Les inscriptions sont réservées aux élèves de niveau BAC ou plus, et sont ouvertes dans la mesure des places disponibles. Le Brevet de Technicien Supérieur d Informatique de Gestion
Informatique Générale
Informatique Générale Guillaume Hutzler Laboratoire IBISC (Informatique Biologie Intégrative et Systèmes Complexes) [email protected] Cours Dokeos 625 http://www.ens.univ-evry.fr/modx/dokeos.html
Organigramme / Algorigramme Dossier élève 1 SI
Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué
Rappels Entrées -Sorties
Fonctions printf et scanf Syntaxe: écriture, organisation Comportement Données hétérogènes? Gestion des erreurs des utilisateurs 17/11/2013 Cours du Langage C [email protected] ibrahimguelzim.atspace.co.uk
Quatrième partie IV. Test. Test 15 février 2008 1 / 71
Quatrième partie IV Test Test 15 février 2008 1 / 71 Outline Introduction 1 Introduction 2 Analyse statique 3 Test dynamique Test fonctionnel et structurel Test structurel Test fonctionnel 4 Conclusion
JF SMA'14. A3 - Agent Anytime Anywhere. une plateforme à agents distribués. 8-10 Oct. 2014. l'expertise middleware. www.scalagent.
l'expertise middleware JF SMA'14 8-10 Oct. 2014 A3 - Agent Anytime Anywhere une plateforme à agents distribués André Freyssinet Directeur Technique [email protected] www.scalagent.com Plan
TP : Gestion d une image au format PGM
TP : Gestion d une image au format PGM Objectif : L objectif du sujet est de créer une classe de manipulation d images au format PGM (Portable GreyMap), et de programmer des opérations relativement simples
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Parcours en deuxième année
Parcours en deuxième année Unités d Enseignement (UE) ECTS Ingénierie des réseaux haut 4 débit Sécurité des réseaux et 4 télécoms Réseaux mobiles et sans fil 4 Réseaux télécoms et 4 convergence IP Infrastructure
Bases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
