Instruction Cache Pathology Report of Linux System Calls

A2 | Fri 25 Jan | 10:40 a.m.–11:25 a.m.


Presented by

  • Xi Yang
    @hiyangxi
    https://yangxi.github.io

    Xi Yang is a PhD. student at Australian National University and a software engineer at Confluent. His research interests are programing language implementations, computer architecture, and operating systems, especially micro-architecture aware optimizations.

Abstract

Linux system calls have complex and large instruction footprints leading to poor instruction cache utilization on modern CPUs, that has a significant impact on the system call performance. However, understanding the kernel's instruction cache behavior is not easy because system calls are fast and run in the context of the user process. This talk presents a high frequency profiler called SHIM-PT that could help developers to understand the kernel's icache usage by correlating icache related performance counter information with the instruction flow of system calls on modern CPUs. SHIM-PT uses the SHIM profiler to record the icache micro-architecture behaviors by sampling performance counters at a high frequency, at the same time, it records the full CPU instruction traces of system calls with the Simple-PT tracer, then it correlates the two signals and reports the icache pathology information. This talk shows many interesting icache behaviors of Linux system calls on Intel CPUs with real-world workloads from web browsers to network servers.