Programmation parallèle CPU / GPU



Documents pareils
Conduite et Gestion de Projet - Cahier des charges

MUNICIPALITÉ PREAVIS N AU CONSEIL COMMUNAL. Présidence : Groupe "Les Verts" Groupe Socialiste

Les formations en cycle ingénieur

Enquête 2014 de rémunération globale sur les emplois en TIC

ANNEXES. Evaluation de la formation à Polytech Lille Département GIS. Enseignements les plus utiles. Enseignements à renforcer

RÉSUMÉ DESCRIPTIF DE LA CERTIFICATION (FICHE RÉPERTOIRE)

Accélérez le projet de Cloud privé de votre entreprise

Poursuivre ses études à l'université de Rouen Masters professionnels en Informatique et en Mathématiques. UFR Sciences et Techniques /18

Conception et Intégration de Systèmes Critiques

MINISTÈRE CHARGÉ DE LA RECHERCHE NOTICE

CA ARCserve Backup. Avantages. Vue d'ensemble. Pourquoi choisir CA

Les principes de la sécurité

COBIT (v4.1) INTRODUCTION COBIT

Une dérivation du paradigme de réécriture de multiensembles pour l'architecture de processeur graphique GPU

1 LE L S S ERV R EURS Si 5

IDF-DG-ESC-Architecte Poste de Travail-1936 Architecte Poste de Travail H/F

Segmentation d'images à l'aide d'agents sociaux : applications GPU

Gestion du centre de données et virtualisation

IODAA. de l 1nf0rmation à la Décision par l Analyse et l Apprentissage / 21

Systèmes de transport public guidés urbains de personnes

ITIL Gestion de la capacité

INGENIERIE DES SYSTEMES INFORMATIQUES - PARCOURS : MOBILITE ET CLOUD COMPUTING

2. Activités et Modèles de développement en Génie Logiciel

LA SURVEILLANCE ET LE SUIVI DE L'ENVIRONNEMENT. Pierre Guimont Conseiller en environnement Unité Environnement Division Équipement, Hydro-Québec

Université Libre de Tunis

Master Energie spécialité Energie électrique

M Études et développement informatique

Déduplication des données : un élément essentiel de votre stratégie de protection des données

Infrastructure RDS 2012

UNION INTERNATIONALE DES TELECOMMUNICATIONS BUREAU DE DEVELOPPEMENT DES TELECOMMUNICATIONS

Éléments d'architecture des ordinateurs

En synthèse. HVR pour garantir les échanges sensibles de l'entreprise

Cloud Computing : forces et faiblesses

Service de réplication des données HP pour la gamme de disques Continuous Access P9000 XP

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

La GEIDE. Dans une solution GEIDE, il est possible d'associer au sein même d'un dossier:

Licence Professionnelle Gestion de l'économie sociale et solidaire et Entrepreneuriat

IMO - Informatique, modélisation et optimisation

Business & High Technology

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

Chapitre 4: Introduction au Cloud computing

Panorama des études à travers les filières. FEEL du 23 octobre 2014

NOUVEAUTES de Microsoft Dynamics CRM 2011 REF FR 80342A

INTELLIGENCE ECONOMIQUE : ENJEUX ET RETOUR D EXPERIENCE PILOTE DANS SEPT PMI DE BOURGOGNE

Réduction de la consommation énergétique des datacenter : optimisation du conditionnement d air, influence de. l architecture

Veille Technologique. Cloud Computing

En savoir plus pour bâtir le Système d'information de votre Entreprise

Microsoft Dynamics AX 2012 Une nouvelle génération de système ERP

Une protection antivirus pour des applications destinées aux dispositifs médicaux

Contexte : «l e-business» TECHNIQUES DE MARKETING EN LIGNE. Contexte : «l e-business» Création de valeur 02/02/12

SEP 2B juin 20. Guide méthodologique de calcul du coût d une prestation

MINISTÈRE CHARGÉ DE LA RECHERCHE

DIALOGUE AVEC LES CONSTRUCTEURS DE VEHICULES

Bénéficiez d'un large choix d'applications novatrices et éprouvées basées sur les systèmes d'exploitation i5/os, Linux, AIX 5L et Microsoft Windows.

Logiciel EV3 LEGO MINDSTORMS Education

Collecter les 54 milliards d'euros de bénéfices issus des nouveaux usages de la donnée

TIC. Panorama. L'industrie de l'information et de la communication la première industrie japonaise

Licences Windows Server 2012 R2 dans le cadre de la virtualisation

La mesure des écarts en Sciences de l'ingénieur

TRAAM STI Acquisition et exploitations pédagogiques des données sur un système pédagogique

WHITE PAPER Datacenter : enjeux et tendances autour des architectures réseaux

Qu est ce que le Cloud Computing?

ANeXiti 33 quai Arloing lyon cedex

Un Web rapide à l'heure des smartphones

Chapitre 1 Introduction

Évolution de la supervision et besoins utilisateurs

Concepts et définitions

DECLARATION ISO/CEI SUR LA PARTICIPATION DES CONSOMMATEURS AUX TRAVAUX DE NORMALISATION

PLATEFORME HORIZONS EMPLOI Métiers et professions

L'évolution de VISUAL MESSAGE CENTER Architecture et intégration

DOSSIER SOLUTION : CA RECOVERY MANAGEMENT

EXIN Cloud Computing Foundation

CREDIT D'IMPOT RECHERCHE MODELE DE DEMANDE D'AVIS PREALABLE

Avenant technologique à la Description commune des services RMS de gestion à distance de Cisco

Management partie 2 : Marketing

f o r m a t i o n m o d u l a i r e e n c o u r s d e m p l o i

DÉVELOPPEMENT INFONUAGIQUE - meilleures pratiques

Arrêt sur image. La simulation numérique au programme de l industrie

Annexe sur la maîtrise de la qualité

Comprendre ITIL 2011

Réunion d'information Stage / Evaluation licence. Licence Informatique 3. Ingénierie Informatique & Mathématiques-Informatique

ACQUISITION DE MATERIEL INFORMATIQUE

Présentation Isatech. ERP, Architecture Systèmes & Réseaux et Décisionnel. Isatech Tous droits réservés Page 1

MASTER 2 IMAFA. Informatique et Mathématiques Appliquées à la Finance et à l'assurance

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

FICHE DE POSTE. Date de rédaction : 20/02/15. Argumentaire général

L offre de formation 2014 INSET de Dunkerque

«Converged Infrastructure» des «buzzword» du marketing ou une approche du système garantissant le succès?

M Études et développement informatique

Attribution de licence pour vcloud Suite

MARKETING. Denis Pettigrew D. Se. gestion Professeur titulaire de marketing Université du Québec à Trois-Rivières

Quels progrès dans le développement des composants icargo?

ÉCONOMIE ET GESTION LYCÉES TECHNOLOGIQUE ET PROFESSIONNEL

GENIE STATISTIQUE GESTION DES RISQUES ET INGENIERIE FINANCIERE MARKETING QUANTITATIF ET REVENUE MANAGEMENT

Bachelier Bibliothécaire- Documentaliste!

Cartes de bruit stratégiques

Examen professionnel. Informatique, système d information. Réseaux et télécommunications

Projet d'infrastructure Cloud

Transcription:

Pré-rapport de stage de Master 2 Professionnel Mention Informatique Spécalité Systèmes et Applications Répartis Parcours Systèmes répartis embarqués ou temps-réel Programmation parallèle CPU / GPU Auteur : Clément Hermite Responsable de stage : Pierre Duboscq Année universitaire 2009-2010

Table des matières 1 Préface 2 1.1 Description................................... 2 1.2 Organisation du document........................... 2 2 Présentation 3 2.1 Novasys Ingénierie............................. 3 2.1.1 Groupe Pacte Novation...................... 3 2.1.2 Novasys Ingénierie......................... 4 2.2 Programmation parallèle............................ 4 2.2.1 Introduction............................... 4 2.2.2 Calcul sur GPU............................. 4 3 Stage 5 3.1 Contexte..................................... 5 3.2 Mission..................................... 5 3.2.1 Sujet................................... 5 3.2.2 Objectifs................................ 6 3.2.3 Roadmap................................ 8

CHAPITRE 1. PRÉFACE Chapitre 1 Préface Ce premier chapitre introduit brièvement le cadre dans lequel le stage est réalisé ainsi que le plan d'organisation de ce pré-rapport. 1.1 Description Mon stage de n d'étude s'inscrit dans le cadre du Master d'informatique spécialité Systèmes et Applications Répartis (SAR). Il se déroule sur le site de Novasys Ingénierie à Issy-Les-Moulineaux(92) du 12 Avril 2010 au 30 Septembre 2010. L'encadrement de mon stage est assuré par le directeur de Novasys Ingénierie, Monsieur Pierre Duboscq. Enn, l'intitulé de mon stage est Programmation parallèle CPU / GPU. 1.2 Organisation du document Ce pré-rapport présente dans un premier temps l'entreprise d'accueil et le domaine du calcul parallèle. Il insiste tout particulièrement sur la programmation parallèle sur carte graphique (GPU). Ensuite, il décrit le contexte de la mission et dénit clairement le sujet de mon stage ainsi que ses objectifs et sa roadmap générale. 2

CHAPITRE 2. PRÉSENTATION Chapitre 2 Présentation Ce second chapitre s'intéresse à présenter l'entreprise d'accueil et le domaine du calcul parallèle. 2.1 Novasys Ingénierie 2.1.1 Groupe Pacte Novation PACTE NOVATION est une société d'ingénierie logicielle pluridisciplinaire, intervenant dans des secteurs d'activités très variés comme le transport, la banque-nance, les télécommunications, l'énergie, l'industrie et le tertiaire. Son savoir-faire, reconnu auprès des très grands comptes, lui permet d'intervenir sur des applications à haute valeur ajoutée. Fondation : Avril 1994 Eectifs : 115 ingénieurs à ce jour Structure : Société Anonyme au capital de 512 000 Euros Actionnaires principaux : Cadres et dirigeants de l'entreprise, Public 2 liales : Assigraph International et Novasys Ingénierie. 1 agence en province sur Nantes. Avec l'acquisition de 92,56% des actions d'assigraph International, PACTE NOVATION a élargi ses domaines d'activité, notamment vers l'aéronautique, et a développé des compétences dans des métiers complémentaires aux siens et renforce ainsi sa capacité à livrer des composants logiciels métiers clés en mains à forte valeur ajoutée. La récente création sa liale détenue à 90% par PACTE NOVATION : la SAS NOVASYS Ingénierie et le rachat par cette dernière d'un fond de commerce informatique temps réel dans le domaine ferroviaire permet de continuer son développement dans le domaine ferroviaire en élargissant ses compétence techniques. 3

2.2. PROGRAMMATION PARALLÈLE CHAPITRE 2. PRÉSENTATION 2.1.2 Novasys Ingénierie La volonté de NOVASYS Ingénierie se concrétise autour d'une spécialité forte : Les systèmes distribués temps réel Regroupant les systèmes embarqués, industriels ou de communication, et d'une manière générale tous les systèmes d'information répondant à un ou plusieurs critères, tels que des contraintes temps réel fortes ou des exigences de sécurité et de disponibilité élevées. 2.2 Programmation parallèle 2.2.1 Introduction Un code de calcul ou programme peut être écrit suivant deux modèles de programmation : séquentiel ou parallèle. Dans le modèle séquentiel, un programme est exécuté par un unique processus. Ce processus tourne sur un processeur d'une machine et a accès à la mémoire du processeur. Il arrive que pour certains codes de calcul, la mémoire d'un seul processeur ne suse plus (manipulation de gros tableaux) et/ou le temps de calcul soit trop important. En eet, pendant de nombreuses années, la vitesse d'horloge des microprocesseurs a augmenté en vue d'accroître leurs performances. Cette technique est à présent dépassée compte tenu des limites physiques des semi-conducteurs et des architectures des processeurs traditionnels. Les problèmes de consommation énergétique, de dissipation et de temps de latence des mémoires réduisent en eet la réalité des gains réalisés sur les performances réelles des applications. La mise en parallèle de plusieurs processeurs est donc une manière simple d'augmenter la puissance de traitement d'un système informatique. Nombre de superordinateurs exploitent des processeurs standards, bénéciant ainsi des économies d'échelle rendues possibles par les autres marchés que couvrent ces puces. 2.2.2 Calcul sur GPU Les cartes graphiques actuelles emploient un processeur de traitement graphique spécialisé (GPU pour Graphics Processing Unit). Ce dernier va gérer les diérentes opérations, par exemple le calcul d'une scène en 3D. Ce type de calculs est aisé à paralléliser. C'est donc tout naturellement que les constructeurs ont choisi un modèle où le GPU comprend de multiples unités de traitement. La 3D nécessite également une large bande passante, ce qui impose l'utilisation de mémoire spécialisée, à haut rendement. Unités de traitement multiples et bande passante avancée sont exactement les caractéristiques demandées par les supercalculateurs. Les programmeurs ont donc rapidement mis à prot la puissance des cartes graphiques pour des calculs classiques (GPGPU pour General-Purpose Computing on Graphics Processing Units). 4

CHAPITRE 3. STAGE Chapitre 3 Stage Ce troisième chapitre décrit dans un premier temps le contexte de la mission, c'està-dire la plate-forme d'iaas dont il faut réaliser l'environnement de tests et le contrat de recherche externe établi avec le LIP6. Ensuite, il évoque le sujet de mon stage, son évolution, ses objectifs ainsi que sa roadmap générale. 3.1 Contexte Dans des domaines aussi variés que celui de l'industrie, du médical, du service aux particuliers ou de la nance, la complexité croissante des modèles mathématiques utilisés et l'augmentation permanente des volumes de données à considérer, justient la continuelle recherche de performance et d'ecience pour les traitements informatisés impliqués. Cette course à l'optimisation s'appuie sur la recherche et la maîtrise de solutions innovantes ainsi que la mise en oeuvre d'architectures pertinentes avec des nouvelles machines de puissance toujours croissante. Dans ce contexte, NOVASYS Ingénierie souhaite d'une part, expérimenter la capacité de calcul des cartes graphiques (GPU) et d'autre part, appréhender leurs contraintes et leurs domaines d'utilisation. 3.2 Mission 3.2.1 Sujet Présentation C'est donc dans le contexte de réalisation et d'intégration d'un module de décision à la plate-forme OrangeCloud que mon stage s'insère. En eet, il s'agit de concevoir un environnement de validation du système de gestion des ressources virtualisées utilisé. En eet, le système d'allocation manuelle des machines virtuelles est augmenté par des mécanismes d'auto-scaling dirigés par les SLA assurés par ledit module de décision. 5

3.2. MISSION CHAPITRE 3. STAGE Par conséquent, pour sa bonne réalisation, il convient de commencer le stage par une étude préliminaire des diérentes méthodes et outils permettant d'évaluer l'ecacité des techniques d'allocation de ressources utilisées par des solutions d'iaas. Cette étude permettra la production d'un état de l'art du domaine. Ensuite, il s'agit de concevoir le testbed (l'environnement de tests) de la plate-forme. Il contiendra par exemple des applications web d'orange permettant de simuler des applications traditionnelles (ex : site web de vente aux enchères) ainsi que des mécanismes d'injection de charge (ex : trac HTTP). Enn, il consistera à établir des scénarios de tests pertinents et qui seront exécutés an de collecter diérentes métriques dans le cadre de la qualication de la plate-forme et de son module de décision. Evolution Durant la phase de prise en main du contexte, il est apparu que le module de décision était encore en phase de spécication. Par conséquent, et à cause de sa forte dépendance avec l'environnement de tests à produire, la mission du stage a évolué. Désormais, elle consiste également à participer à la spécication des interfaces du module ainsi qu'à son intégration avec la plate-forme Orange Cloud. 3.2.2 Objectifs Etat de l'art Le premier objectif de mon stage consiste donc en la réalisation d'un état de l'art portant sur les deux aspects suivants : Diérents acteurs du domaine de l'infrastructure as a Service. Diérentes méthodes et outils utilisés pour la qualication des techniques d'allocation de ressources dans les datacenters virtualisés. Pour les diérents acteurs du domaine de l'iaas, il s'agit d'en analyser un certain nombre an de comprendre leurs mécanismes internes de fonctionnement. Un intérêt tout particulier doit être porté sur les moyens d'approvisionnement dynamique de ressources dans les diérentes solutions. Par ailleurs, il faut également réaliser une étude de faisabilité indiquant de la possibilité d'intégration du module de décision aux diérentes solutions et les coûts impliqués par un tel travail. Le second aspect de mon état de l'art porte sur la construction d'une bibliographie concernant les méthodes et outils de qualication des techniques d'allocation de ressources dans les datacenters virtualisés. Le point de départ de ce travail est l'article [?] dont l'approche formulée sert à la modélisation initiale du module de décision du CRE. De plus, il est important de noter que l'état de l'art n'a pas pour objectif de recenser toutes les méthodes existantes. En eet, seul un sous-ensemble de techniques jugées pertinentes et adaptées à la plate-forme cible sera étudié et présenté. 6

3.2. MISSION CHAPITRE 3. STAGE S'initier à l'utilisation des GPU Ce second objectif est réalisé en parallèle du premier. Sur celui-ci, je suis amené à travailler conjointement avec mes maîtres de stage ainsi que les intervenants du LIP6 dans le cadre du CRE. Dans un premier temps, il convient de participer à la spécication des interfaces proprement dites. D'une part, cette implication se justie par la forte dépendance des services oerts par le module de décision par le biais de ses interfaces avec le testbed à réaliser. D'autre part, il s'agit de s'assurer que le module de décision reste assez générique pour s'intégrer avec d'autres solutions d'iaas. Dans un second temps, une fois que la spécication aura été terminée, je participerai à l'intégration des interfaces avec la plate-forme en cours de prototypage chez Orange Labs. Cette intégration ne concerne que la partie métier du module de décision, c'est-àdire l'intégration avec OrangeCloud, les modèles de SLA et le remontage d'informations telles que la charge de l'application et sa performance. En eet, la partie décisionnelle est livrée par le LIP6 et sera utilisé en tant que boîte noire. Sélectionner et installer une plateforme d'évaluation GPU Cet troisième objectif consiste en la conception d'un environnement de validation du système, c'est-à-dire la plate-forme OrangeCloud avec le module de décision. Cet objectif est tributaire de la bonne réalisation des deux précédents objectifs : l'état de l'art sur les méthodes et outils de qualication ainsi que la spécication et l'intégration des interfaces du module de décision. Une fois ces conditions atteintes, il convient de proposer une solution de testbed adaptée à la plate-forme cible. Une fois approuvée, mon travail consistera à la mettre en place, à la tester et à fournir un livrable ainsi qu'une documentation technique d'utilisation. S'initier à la programmation sur GPU. Ce dernier objectif consiste à dénir une méthodologie dans le but de réaliser des campagnes de tests de la plate-forme cible. Ces campagnes seront réalisées grâce au testbed que je conçois. Tout comme pour l'objectif précédent, la méthodologie est tributaire de l'état de l'art réalisé. Cette politique doit donc comprendre la spécication complète des scénarios en indiquant pour chacun : L'environnement cible (ex : le nombre d'instances des applications à déployer). L'environnement de tests (ex : les mécanismes d'injection de charge). Les mesures à prendre au cours de l'exécution des campagnes de tests. Etablir un comparatif de performance. 7

3.2. MISSION CHAPITRE 3. STAGE 3.2.3 Roadmap Le stage est organisé selon la roadmap générale suivante : Avril 2010 : 1. Etat de l'art. 2. Sélectionner et installer une plateforme d'évaluation GPU. Mai 2010 : 1. Etat de l'art. 2. S'initier à la programmation sur GPU. 3. Etablir un comparatif de performance. Juin 2010 : 1. 2. 3. Juillet 2010 à Septembre 2010 : 1. 8