Preference: Regular talk
Linux kernel is maintained by applying patches at a very high scale which both adds and removes the code. This could lead to performance regressions in some of the workloads even if the actual code in the hot functions is untouched. The focus of this talk would be to discuss one of the reasons "L1-icache load misses" that occur due to cache alignment issues with code changes unrelated to the functions that consume more CPU cycles. This talk also covers the process of debugging and identifying such issues using tools like perf, custom scripts and PMU events including scenarios like cache set overlap. It would also analyze the impact due to branch prediction and prefetching.
This talk primarily covers:
1) impact of L1-icache-load misses on overall performance.
2) Relate code changes to L1-icache load misses.
3) Profiling tools and custom scripts used to identify the issue.
4) Hear from the community about approaches to mitigate this issue.
My main objective from this talk is to start a discussion regarding the impact of L1-icache load misses on the performance, provide debugging steps to find such issues and gather potential solutions from this talk so that audience if facing similar issue could debug and mitigate the issue efficiently.
About me:
I am a Software Engineer at IBM (LTC), working on the Linux CPU scheduler. Over the past 3 years, I have been investigating performance issues in the Linux kernel, with a focus on scheduler behavior. I have contributed upstream to perf sched, and I regularly work with tools like perf and eBPF to build observability and debug regressions.
Thanks,
Madadi Vineeth Reddy
(Software Engineer, LTC, IBM)