arXiv · 2004.05628
GAPP: A Fast Profiler for Detecting Serialization Bottlenecks in Parallel Linux Applications
Abstract
We present a parallel profiling tool, GAPP, that identifies serialization bottlenecks in parallel Linux applications arising from load imbalance or contention for shared resources . It works by tracing kernel context switch events using kernel probes managed by the extended Berkeley Packet Filter (eBPF) framework. The overhead is thus extremely low (an average 4% run time overhead for the applications explored), the tool requires no program instrumentation and works for a variety of serialization bottlenecks. We evaluate GAPP using the Parsec3.0 benchmark suite and two large open-source projects: MySQL and Nektar++ (a spectral/hp element framework). We show that GAPP is able to reveal a wide range of bottleneck-related performance issues, for example arising from synchronization primitives, busy-wait loops, memory operations, thread imbalance and resource contention.
Explore related subjects
Keep this discovery
Reena Nair, Tony Field. 2020-04-12. GAPP: A Fast Profiler for Detecting Serialization Bottlenecks in Parallel Linux Applications. https://doi.org/10.1145/3358960.3379136
Cite the original work for its findings. Save a collection to share your selection of sources.