Extending Cachegrind:L2 cache inclusion and TLB measuring
Stavros Kaparelos · The University of Bath Online Publications Store (The University of Bath) · 2014
Programmers need to develop hardware conscious software in order to optimise efficiency and increase execution speed. To do that, they need tools that can provide such kind of information. Cachegrind is such a tool. It is a cache profiling tool that provides statistics for level 1 and the last level caches. This project extended Cachegrind, firstly, to include information for L2 cache when 3 levels of cache are present and, secondly, to measure the Translation Lookaside Buer (TLB). L2 cache inclusion presents the same information as presented in the other cache levels, while measuring the TLB provides a) the number of hits and misses, b) the pages used and the times used and c) per file, per function and, per source code line statistics. Any extension is developed to work in an Intel x86 architecture. Finally, extensions have been tested and results have been checked to be logical, as well as to be along the lines of the expected ones.