Search code examples
linuxprofilingtlb

Command to measure TLB misses on LINUX


Could some one direct me to a command to measure TLB misses on LINUX, please? Is it okay to consider minor page faults as TLB misses?


Solution

  • You can use perf to do this. Provided your CPU supports it.

    Use perf list to get some idea of the counters available. When I took this list and grepped for TLB (on my Sandy Bridge machine) I got:

    rob@tartarus:~$ perf list | grep -i tlb
      dTLB-loads                                         [Hardware cache event]
      dTLB-load-misses                                   [Hardware cache event]
      dTLB-stores                                        [Hardware cache event]
      dTLB-store-misses                                  [Hardware cache event]
      dTLB-prefetches                                    [Hardware cache event]
      dTLB-prefetch-misses                               [Hardware cache event]
      iTLB-loads                                         [Hardware cache event]
      iTLB-load-misses                                   [Hardware cache event]
    

    You can then use this particular counter with: perf record -e <event0>,<event1>,..

    And then just use perf report to look at the results.