Are you an EPFL student looking for a semester project?
Work with us on data science and visualisation projects, and deploy your project as an app on top of Graph Search.
This lecture introduces the fundamentals of parallel programming, covering concepts such as concurrency, parallelism, forms of parallelism (throughput, functional, pipeline, data), task granularity, division of work, asynchrony, creating parallel programs, shared memory programming, automatic parallel program creation, forms of communication (shared memory, message passing), programming models (sequential, shared memory, message passing, data parallel, dataflow), software layering, synchronization, and examples of parallel programming using PThreads and OpenMP.