Analyzing Memory Accesses With Modern Processors
Title
Analyzing Memory Accesses With Modern Processors
Authors
Stefan Noll, Jens Teubner, Norman May, and Alexander Böhm
Published
16th Int'l Workshop on Data Management on New Hardware (DaMoN), Portland, OR, USA, June 2020
Abstract
Debugging and tuning database systems is very challenging. Using common profiling tools is often not sufficient because they identify the machine instruction rather than the instance of a data structure that causes a performance problem. This leaves a problem's root cause such as memory hotspots or poor data layouts hidden. The state-of-the-art solution is to augment classical profiling with a memory trace. However, current approaches for collecting memory traces are not usable in practice due to their large runtime overhead.
In this work, we leverage a mechanism available in modern processors to collect memory traces via hardware-based sampling. We evaluate our approach using a commercial and an open-source database system running the JCC-H benchmark. In particular, we demonstrate that our approach is practical due to its low runtime overhead and we illustrate how memory traces uncover new insights into the memory access characteristics of database systems.
Source Code
The source code is available on github.
Publication Log
Mai 2020
March 2020
submission to DaMoN 2020 (accept)
- submission (PDF)
- reviews (Strong Accept, Accept, Strong Accept)