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 shared memory synchronization and different methods like locks and barriers. It explains the challenges, desirable characteristics, and implementation details of locks using concepts like test-and-set, test-and-test-and-set, and exponential back-off. The lecture also discusses the performance characteristics, issues, and solutions related to these synchronization methods. Additionally, it explores the implementation of barriers, combining trees, and synchronization in OpenMP, including critical sections, atomics, and locks. The content emphasizes the importance of efficient synchronization mechanisms for ensuring correctness, scalability, and minimizing coherence traffic.