Introduction to Parallel Programming Created byGalina MISHEVA|UpdatedagoOnlineThis course gives an Introduction to Parallel Programming. Parallel programming is the breaking down of a larger problem into smaller steps, with instructions delivered to multiple processors that execute the necessary calculations in parallel.On this course, you will explore the fundamentals of parallel programming using C, C++, Python, Fortran, Cuda/OpenCL or similar programming languages.What will you learn? The aim of this MOOC is to guide participants so that they become confident users in Open MP and MPI for parallel programming. You will also: Learn how to use Open Multi-Processing (OpenMP) for incremental parallelisation within a single multicore shared memory paradigmLearn how to use the Message Passing Interface (MPI) message-passing standard to control communication between two processes, subroutines, or functions within a programGet an introduction to the OpenMPI library project (used by TOP500 supercomputers), which aims to create a single world-class, open-source MPI implementation based on best practicesLearn how to express numerical problems in parallel programming paradigms, gaining an awareness of potential design and performance pitfalls in heterogeneous architectures Solve numerical problems in parallel programming paradigms, gaining an awareness of potential design and performance pitfalls in heterogeneous architecturesGet an introduction to hybrid and accelerated paradigms (Cuda, OpenCL)Course detailsIdeal for people with some previous knowledge of IT and programming, the course is especially suitable for junior programmers who are just starting out in their careers. Some knowledge of C, C++, Fortran, Python, or similar is useful 5 weeks to completeTime commitment ~4 hours weekly Self-paced ModulesIntroduction to parallel programmingOpenMPMessage Passing Interface (MPI)MPI ContinuedBeyond OpenMP and MPI - GPU parallelisationThe course is delivered by the LECAD Laboratory at the University of Ljubljana, as part of its Partnership for Advanced Computing in Europe (PRACE). LECAD emphasises the teaching of parallel programming alongside leading European high-performance computing (HPC) centres. Training Offer DetailsWebsite linkIntroduction to Parallel ProgrammingPartnership for Advanced Computing in Europe (PRACE)Digital technology / specialisationCybersecuritySoftwareTraining opportunitiesMOOCLearning EffortPart time lightSelf-pacedYesDuration Time3 MonthsDigital skill levelAdvancedDigital ExpertProvider OrganisationPartnership for Advanced Computing in Europe (PRACE) Geographic scope - CountryAustriaBelgiumBulgariaCyprusRomaniaSloveniaCroatiaCzech republicDenmarkEstoniaFinlandFranceGermanyGreeceHungaryItalyIrelandMaltaLatviaLithuaniaLuxembourgNetherlandsPortugalPolandSwedenSpainSlovakiaShow moreShow lessTarget languageEnglishField of education and trainingInformation and Communication Technologies (ICTs) not further definedDatabase and network design and administrationSoftware and applications development and analysisIs this course freeYesCredential offeredLearning ActivityPrerequisitesNoUpcoming courseNoLog in to comment