Avec tous les smartphones et ordinateurs dotés de plusieurs processeurs, l'utilisation d'idées fonctionnelles pour faciliter la programmation parallèle est de plus en plus répandue. Dans ce cours, vous apprendrez les principes fondamentaux de la programmation parallèle, du parallélisme des tâches au parallélisme des données. En particulier, vous verrez comment de nombreuses idées familières de la programmation fonctionnelle s'adaptent parfaitement au paradigme du parallélisme de données. Nous commencerons par les rouages de la parallélisation efficace des opérations de collections familières, et nous construirons jusqu'à parallel collections, une bibliothèque de collections de données parallèles prête à la production, disponible dans la bibliothèque standard de Scala. Tout au long du cours, nous appliquerons ces concepts à travers plusieurs exemples pratiques qui analysent des données du monde réel, tels que des algorithmes populaires comme le clustering k-means. Objectifs pédagogiques. A la fin de ce cours, vous serez capable de : - raisonner sur les programmes parallèles de tâches et de données, - exprimer des algorithmes communs dans un style fonctionnel et les résoudre en parallèle, - microbenchmarker de manière compétente le code parallèle, - écrire des programmes qui utilisent efficacement les collections parallèles pour atteindre la performance : Vous devez avoir au moins un an d'expérience en programmation. La maîtrise de Java ou de C# est idéale, mais une expérience dans d'autres langages tels que C/C++, Python, Javascript ou Ruby est également suffisante. Vous devez avoir une certaine familiarité avec l'utilisation de la ligne de commande. Ce cours est destiné à être suivi après Functional Program Design in Scala : https://www.coursera.org/learn/progfun2.
Programmation parallèle
Ce cours fait partie de Spécialisation Programmation fonctionnelle en Scala
Instructeurs : Prof. Viktor Kuncak
60 156 déjà inscrits
Inclus avec
(1,840 avis)
Compétences que vous acquerrez
- Catégorie : Structure des données
- Catégorie : Calcul parallèle
- Catégorie : Parallélisme des données
- Catégorie : Algorithme parallèle
Détails à connaître
Ajouter à votre profil LinkedIn
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées
Élaborez votre expertise du sujet
- Apprenez de nouveaux concepts auprès d'experts du secteur
- Acquérez une compréhension de base d'un sujet ou d'un outil
- Développez des compétences professionnelles avec des projets pratiques
- Obtenez un certificat professionnel partageable
Obtenez un certificat professionnel
Ajoutez cette qualification à votre profil LinkedIn ou à votre CV
Partagez-le sur les réseaux sociaux et dans votre évaluation de performance
Il y a 4 modules dans ce cours
Nous motivons la programmation parallèle et introduisons les constructions de base pour construire des programmes parallèles sur JVM et Scala. Des exemples tels que la norme des tableaux et les calculs de Monte Carlo illustrent ces concepts. Nous montrons comment estimer le travail et la profondeur des programmes parallèles ainsi que comment comparer les implémentations.
Inclus
9 vidéos5 lectures3 devoirs de programmation
Nous poursuivons avec des exemples d'algorithmes parallèles en présentant un tri parallèle par fusion. Nous expliquons ensuite comment des opérations telles que map, reduce et scan peuvent être calculées en parallèle. Nous présentons l'associativité comme la condition clé permettant la mise en œuvre parallèle de la réduction et du balayage.
Inclus
6 vidéos2 devoirs de programmation
Nous montrons comment les opérations de données parallèles permettent le développement d'un code élégant de données parallèles en Scala. Nous donnons un aperçu de la hiérarchie des collections parallèles, y compris les caractéristiques des séparateurs et des combinateurs qui complètent les itérateurs et les constructeurs du cas séquentiel.
Inclus
5 vidéos2 devoirs de programmation
Nous donnons un aperçu des structures de données internes pour le calcul parallèle, ce qui nous aide à comprendre ce qui se passe sous le capot des collections parallèles.
Inclus
5 vidéos2 devoirs de programmation
Instructeurs
Offert par
Recommandé si vous êtes intéressé(e) par Développement de logiciels
University of London
University of California San Diego
University of Colorado System
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?
Avis des étudiants
1 840 avis
- 5 stars
59,67 %
- 4 stars
28,15 %
- 3 stars
9,23 %
- 2 stars
2,17 %
- 1 star
0,76 %
Affichage de 3 sur 1840
Révisé le 28 mars 2018
For this course you should have Advanced English level. Cause sentesce construction is so difficult and words so unusual that i had to some times google what i have to do.
Révisé le 20 févr. 2017
Truly great course. The assignments are designed very well. The instructor and videos were excellent. I only wish there had been more student participation in the forum.
Révisé le 16 mai 2017
The assignment could be optimized and avoid to be more academic since it may make student lost focus and spend too much time on the question itself rather than the parallel programming
Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
L'accès aux cours et aux devoirs dépend de votre type d'inscription. Si vous suivez un cours en mode audit, vous pourrez consulter gratuitement la plupart des supports de cours. Pour accéder aux devoirs notés et obtenir un certificat, vous devrez acheter l'expérience de certificat, pendant ou après votre audit. Si vous ne voyez pas l'option d'audit :
Il se peut que le cours ne propose pas d'option d'audit. Vous pouvez essayer un essai gratuit ou demander une aide financière.
Le cours peut proposer l'option "Cours complet, pas de certificat" à la place. Cette option vous permet de consulter tous les supports de cours, de soumettre les évaluations requises et d'obtenir une note finale. Cela signifie également que vous ne pourrez pas acheter un certificat d'expérience.
Lorsque vous vous inscrivez au cours, vous avez accès à tous les cours de la Specializations, et vous obtenez un certificat lorsque vous terminez le travail. Votre certificat électronique sera ajouté à votre page de réalisations - de là, vous pouvez imprimer votre certificat ou l'ajouter à votre profil LinkedIn. Si vous souhaitez uniquement lire et visualiser le contenu du cours, vous pouvez auditer le cours gratuitement.
Si vous vous êtes abonné, vous bénéficiez d'une période d'essai gratuite de 7 jours pendant laquelle vous pouvez annuler votre abonnement sans pénalité. Après cette période, nous ne remboursons pas, mais vous pouvez résilier votre abonnement à tout moment. Consultez notre politique de remboursement complète.