Programmation Multicore

Formation

À Paris

1 640 € TTC

Appeler le centre

Avez-vous besoin d'un coach de formation?

Il vous aidera à comparer différents cours et à trouver la solution la plus abordable.

Description

  • Typologie

    Formation

  • Dirigé à

    Pour professionnels

  • Lieu

    Paris

  • Durée

    3 Jours

Objectifs: Cette formation programmation multicore vous permettra de comprendre au sein des systèmes et processeurs les architectures Multicore et leurs programmations. Vous découvrirez les techniques de mise en oeuvre d'une approche multithread ou multiprocess et les techniques et langages dédiés à la programmation parallèle.

Précisions importantes

Modalité Formation continue

Les sites et dates disponibles

Lieu

Date de début

Paris ((92) Hauts-de-Seine)
Tour Atlantique, 92400

Date de début

Consulter

À propos de cette formation

Connaître un langage objet et être sensibilisé au sujet. Connaître un des trois langages utilisés dans le cours : C#, Java ou C++. La lecture des diagrammes UML est un plus.

Questions / Réponses

Ajoutez votre question

Nos conseillers et autres utilisateurs pourront vous répondre

À qui souhaitez-vous addresser votre question?

Saisissez vos coordonnées pour recevoir une réponse

Nous ne publierons que votre nom et votre question

Les Avis

Le programme

Créez des applications bénéficiant des performances nouvelles des processeurs

Objectifs de la formation Programmation Multicore
Cette formation programmation multicore vous permettra de comprendre au sein des systèmes et processeurs les architectures Multicore et leurs programmations. Vous découvrirez les techniques de mise en OEuvre d’une approche multithread ou multiprocess et les techniques et langages dédiés à la programmation parallèle. Ainsi que les contraintes en matière de synchronisation d’accès aux données et les précautions à prendre pour conserver une performance optimale des applications.

Pré-requis :
Connaître un langage objet et être sensibilisé au sujet. Connaître un des trois langages utilisés dans le cours : C#, Java ou C++. La lecture des diagrammes UML est un plus.

Travaux pratiques :
L’outil Open source BOUML sera utilisé pour la modélisation UML, Visual Studio express(tm) pour la manipulation des langages C# et C++, NetBeans(tm) 6.x pour Java. Les exemples seront démontrés grâce aux langages UML, Java, C++ et Dot Net.

Contenu de la formation Programmation Multicore

* Les architectures multi core
Les enjeux de la programmation Multicore dans les années à venir
Tableau général des technologies utilisables : processus, threads et parallélisme
Description et rappel du fonctionnement d’un processeur
Les architectures en « Hyperthreading »
Les architectures des processeurs INTEL et AMD
Les architectures NVidia et API
Les aspects synchronisation à prévoir : cas généraux


* Modélisation des applications multi core
Importance des aspects modélisation
Parallélisation des traitements (ex : calcul)
Utilisation des mécanismes asynchrones : processus, threads ...
Développer une nouvelle application : précautions et modélisation
Eviter les « singletons »
Modifier une application existante en Multicore : problèmes rencontrés
Choix d’architecture : un compromis synchronisation et performance
Choix multiprocessus / multithreads

* Threads
Organisation d’un système à base de threads
Les threads dans les systèmes et les langages (exemple : Java, .NET et C++)
Apport des threads dans une application industrielle
Ordonnancement des threads dans les systèmes : technique du « round robin »
Gestion des stacks et « call stack » dans les threads
Les déboggeurs multi-threads : ex Visual Studio et NetBeans
Gestion des objets de synchronisation : sections critiques, Mutex et Sémaphores
Développer « Thread safe »
Règles pour développer en approche multithread
Les APIs de threads avec Windows, Java et DOT Net
Les APIs de POSIX
Travail pratiqueThreads et synchronisation en DOT Net, Java et C++

* Processus
Espaces d’adressage des processus, organisation
Critères de choix d’une approche multi-processus
Ensemble des techniques de communication inter processus (IPC)
Techniques de Debugging multiprocess, nouveaux outils (ex : Visual Studio 2005)
Avantage et inconvénients des techniques multi processus
Particularité : Les « Domain » DOT NetTravail pratique
Gestion de traitements asynchrones avec l’API windows

* La programmation parallèle
L’apport et les objectifs de la programmation parallèle
« Parallel FX » la bibliothèque DOT Net pour paralléliser
Architecture PFX et philosophie
Composants TPL et PLINQTravail pratiqueParalléliser des algorithmes avec PFX C#
La librairie « OpenMP » C++
Directives « OpenMP » disponiblesTravail pratiqueParalléliser des algorithmes avec « OpenMP » en C++
Utiliser les GPUs des cartes graphiques pour le calcul
Les kits de NVidia (CUDA) et ATI
Exemple d’applications utilisant les bibliothèques
Exemple de code et commentaires

* Synthèse et conclusion
Conclusion des techniques étudiées
L’avenir de C++ avec le multicore
Synthèse des approches de Design, threads, multiprocessus et programmation parallèle

Appeler le centre

Avez-vous besoin d'un coach de formation?

Il vous aidera à comparer différents cours et à trouver la solution la plus abordable.

Programmation Multicore

1 640 € TTC