Команда для измерения пропусков TLB в LINUX - PullRequest
3 голосов
/ 24 января 2012

Может, кто-нибудь направит меня к команде для измерения пропусков TLB в LINUX, пожалуйста?Можно ли считать незначительные ошибки на странице при пропадании TLB?

Ответы [ 2 ]

7 голосов
/ 19 февраля 2012

Вы можете использовать perf для этого. При условии, что ваш процессор поддерживает его.

Используйте 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 для просмотра результатов.

4 голосов
/ 18 августа 2016

Чтобы просмотреть эту информацию для всей системы, вы можете использовать следующую строку.Это будет записывать счетчики в течение 1 минуты (60 секунд).

perf stat -e dTLB-loads,dTLB-load-misses,iTLB-loads,iTLB-load-misses sleep 60
...