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?
You can use perf to do this. Provided your CPU supports it.
perf
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:
perf list
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>,..
perf record -e <event0>,<event1>,..
And then just use perf report to look at the results.
perf report
To see this information for the entire system, you could use the following line. This will record the counters for 1 minute (60 seconds).
perf stat -e dTLB-loads,dTLB-load-misses,iTLB-loads,iTLB-load-misses sleep 60
If miss ratio is higher than 1% you should look into using huge pages.
Copyright © 2021 Jogjafile Inc.
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:You can then use this particular counter with:
perf record -e <event0>,<event1>,..
And then just use
perf report
to look at the results.