Czy ktoś mógłby skierować mnie do polecenia mierzenia braków TLB na LINUX, proszę? Czy można rozważać (lub przybliżać) drobne błędy strony, ponieważ brakuje TLB?
Możesz użyć perf, aby uzyskać dostęp do liczników wydajności sprzętu:
$ perf stat -e dTLB-load-misses,iTLB-load-misses /path/to/command
np .:
$ perf stat -e dTLB-load-misses,iTLB-load-misses /bin/ls > /dev/null
Performance counter stats for '/bin/ls':
5,775 dTLB-load-misses
1,059 iTLB-load-misses
0.001897682 seconds time elapsed
Drobna usterka i brak TLB nie są dobrymi analogami. Drobny błąd występuje, gdy żądana strona znajduje się w pamięci, ale nie jest odwzorowana w bieżącej tabeli stron. Z pewnością byłby to przypadek, że niewielki błąd zostanie powiązany z brakiem TLB (ponieważ wpisy TLB są skrótami do wpisów w tabeli strony), ale brak TLB będzie spowodowany wieloma innymi rzeczami, np. Poważnymi błędami lub zmianą lokalizacji programu .
Niewielkie błędy strony występują, gdy strona jest już załadowana do pamięci, ale powiązany wpis tablicy strony nie został jeszcze utworzony. Jako efekt uboczny drobne błędy strony zawsze wiążą się z brakami TLB. Z drugiej strony, brak TLB występuje, gdy pozycja tłumaczenia strony nie znajduje się w TLB (która jest pamięcią podręczną), co może się zdarzyć, gdy ten wpis TLB został wcześniej eksmitowany z powodu ograniczonej pojemności TLB.