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 covers the principles of synchronization in parallel computing, focusing on locks and barriers. It explains the implementation of locks using test-and-set instructions, load-locked and store-conditional operations, and their performance characteristics. The concept of barriers is introduced as a way to coordinate threads, with a detailed analysis of centralized barriers and combining trees. The lecture also discusses synchronization in OpenMP, including locks, critical sections, and atomic operations. The instructor emphasizes the importance of building efficient locks with hardware support and the need for careful consideration of correctness and traffic in synchronization mechanisms.