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 by the instructor covers software optimizations focusing on locality, memory access, and scheduling strategies for parallel execution. It delves into cache hierarchy, latency considerations, cache miss models, coherence misses, and techniques to reduce true and false sharing. The lecture also includes examples like histogram computation, parallel work division, and matrix multiplication to illustrate optimization strategies. It emphasizes the importance of the locality principle, blocking for cache efficiency, and load balancing through dynamic work distribution. Additionally, it discusses loop optimizations, task queues for parallel processing, and functional parallelism for independent tasks.