Booster des Talents IT

Formation Programmation en Multicore

Soyez en mesure de programmer vos applications en Multicore grâce à cette formation. Vous apprendrez toutes les techniques de mise en œuvre d’une approche multithread ou multiprocess ainsi que la programmation parallèle.
Prixà partir de
1650€ HT
RéférenceAF9423
Durée3 jours
Public Développeurs
PrérequisConnaissances du langage Java, C++ ou C#
TP50%

Plan de Formation Programmation en Multicore

Introduction

Enjeux de la programmation en Multicore pour l’avenir
Technologies à utiliser : processus, threads et parallélisme
Fonctionnement d’un processeur
Architectures :
– En « Hyperthreading »
– Des processeurs INTEL™ et AMD™
– NVidia™ et API™
Aspects synchronisation

Modéliser les applications

Importance de la modélisation
Parallélisation des traitements
Loi de Amdahl (ex : calcul)
Utiliser les mécanismes asynchrones
Développement d’une nouvelle application
Les « singletons » (ne pas utiliser)
Modification d’une application en Multicore
Choisir une architecture (un compromis synchronisation et performance)
Choisir entre multiprocessus et multithreads

Threads

Système à base de threads
Existence des threads dans les systèmes et les langages (ex : Java, .NET et C++)
Qu’est-ce que les threads apportent dans une application industrielle ?
Ordonnancer les threads dans les systèmes (principe du « round robin »)
Gérer les stacks et « call stack »
Les déboggeurs multi-threads
Gérer les objets de synchronisation tels que les sections critiques, Mutex ou Sémaphores
Le développement de « Thread safe »
Usages du développement en approche multithread
Les APIs :
– De threads avec Windows
– Java
– DOT Net
– De POSIX

Les différents processus

Étendues d’adressage des processus et comment les organiser
Conditions de choix d’une approche multi-processus
Les différents concepts de communication inter processus (IPC)
Techniques de Debugging multiprocess et les nouveaux outils comme Visual Studio 2008
Avantage et inconvénients des techniques multi processus
Les « Domain » DOT Net

Programmation parallèle

Apports et objectifs de cette programmation
« Parallel FX » :
Bibliothèque DOT Net afin de paralléliser
Architecture PFX et philosophie
Éléments TPL et PLINQ
La librairie « OpenMP » C++
Directives « OpenMP » vacants
Utilisation des GPUs
Cartes graphiques pour le calcul
Kits de NVidia (CUDA) et ATI
Exemple :
– D’applications utilisant les bibliothèques
– De code et commentaires

Conclusion de la programmation en Multicore

Conclusion des techniques étudiées
Quel est l’avenir de C++ avec le Multicore ?
Synthèse des différentes approches (Design, threads, multiprocessus et programmation parallèle)

Nos autres formations Informatique

AF32614Formation Firewall 9.0 : Debug et Diagnostic (EDU-330) en Intra/Cours Particulier3 jours2250€ HT
AF32356Formation Gestion de projet par l’exemple New Formation ! en Intra/Cours Particulier3 jours1490€ HT
AF31547Formation Palo Alto Networks Firewall 9.0 Essentials : Configuration et Management, avec certification PCNSA en Intra/Cours Particulier5 jours
AF29420Formation Intégrer de nouveaux collaborateurs IT New Formation ! en Intra/Cours Particulier2 jours0€ HT
AF25064Formation Vagrant en Intra/Cours Particulier1 jour550€ HT
Voir les 369 formations
Vous pouvez également être intéressé par des formations Langages de développement, multicore, Programmation ou par les formations de notre filière Informatique
Prixà partir de
1650€ HT
RéférenceAF9423
Durée3 jours
Public Développeurs
PrérequisConnaissances du langage Java, C++ ou C#
Travaux pratiques50%