Skip to main content
Search by keyword

Parallel Programming

Single offer

Parallel programming is a term that defines the use of multiple processors, or resources, to solve a problem and perform a task. Used in the field of programming and computer science, parallel programming breaks up each problem into a series of small steps and provides instructions to processors, which in turn execute the tasks. Multiple processors are a embedded in virtually every smartphone and computer nowadays, making knowledge of parallel programming relevant and in demand. 

The course covers several foundational topics, central to parallel computing, including: data parallelism versus task parallelism, parallel code, parallel data structures, and parallel collections. Learners also understand how to ensure functional programming and write high-performing code. The course targets persons with advanced digital skills, professionals in the information and communication technology (ICT) sector, and other digital experts interested to upskill further. Course participants need to have at least a year of programming experience, including proficiency with Java or C#. Experience and knowledge of other languages, such as C/C++, Python, Javascript or Ruby, is also beneficial. 

Background of the course and programme

The course's material is led by two instructors from the École Polytechnique Fédérale de Lausanne (EPFL): Professor Viktor Kuncak from the École Polytechnique Fédérale de Lausanne (EPFL)'s School of Computer and Communication Sciences, and Dr. Aleksandar Prokopec, Software Developer and Principal Researcher at the EPFL. Learning activities are spread over 4 weeks and the deadlines of the programmes are flexible (i.e. can be pushed back). The course is in English, with subtitles in several EU and international languages: Arabic, French, Portuguese, Italian, Vietnamese, German, Russian, English, and Spanish. It can be audited free of charge (and users can opt to purchase a certificate for a fee).

The course is part of a wider online educational programme on the topic of parallel computing and programming by the EPFL, and follows the Functional Program Design in Scala, a course which teaches participants programming skills in the context of Scala applications. 

Training Offer Details

Target audience
Digital skills for the labour force.
Digital skills for ICT professionals and other digital experts.
Digital skill level
Geographic scope - Country
Industry - field of education and training
Software and applications development and analysis
Target language
Geographical sphere
National initiative
Typology of training opportunties
Learning activity
e-learning coursework
Assessment type
Training duration
Is this course free
Is the certificate / credential free
Training start date
Part time light
Self-paced course