[英]Command to measure TLB misses on LINUX
有人可以指導我使用命令來測量 LINUX 上的 TLB 未命中嗎? 是否可以將次要頁面錯誤視為 TLB 未命中?
您可以使用perf
來執行此操作。 只要您的 CPU 支持它。
使用perf list
了解可用的計數器。 當我拿到這份清單並搜索 TLB(在我的 Sandy Bridge 機器上)時,我得到:
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]
然后你可以使用這個特定的計數器: perf record -e <event0>,<event1>,..
然后只需使用perf report
來查看結果。
要查看整個系統的此信息,您可以使用以下行。 這將記錄計數器 1 分鍾(60 秒)。
perf stat -e dTLB-loads,dTLB-load-misses,iTLB-loads,iTLB-load-misses sleep 60
如果未命中率高於 1%,您應該考慮使用大頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.