In this lecture, we will look into the basics of CPU hardware architecture and how it relates to performance. We will also look into how to identify performance bottlenecks using a profiler, and what techniques can be used to mitigate different kinds of performance bottlenecks.
Students should have basic familiarity with the Linux operating system, as well as with C and/or C++ programming languages. Knowledge about data structures and algorithms at a basic level is also good to have, but not strictly necessary.
Short Speaker Bio
Guilherme is a scientific software developer at CERN. He works on performance optimization of particle detector simulation software, as well as on porting simulation software to GPUs. Guilherme received his Ph.D. in aerospace engineering from the University of Illinois at Urbana-Chamapaign in 2014, and M.Sc. degree in physics from the University of Tokyo in 2007.