Команда для вимірювання пропусків TLB на LINUX?


12

Невже хтось може направити мене на команду вимірювати пропуски TLB на LINUX, будь ласка? Чи добре вважати (або наближати) незначні помилки сторінки як пропуски TLB?

Відповіді:


10

Ви можете використовувати perf для доступу до апаратних лічильників продуктивності:

$ perf stat -e dTLB-load-misses,iTLB-load-misses /path/to/command

наприклад:

$ 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

2

Незначна помилка та пропуск TLB - не хороші аналоги. Незначна помилка виникає, коли запитувана сторінка знаходиться в пам'яті, але не відображається в поточній таблиці сторінок. Звісно, ​​що незначна помилка буде пов’язана з пропуском TLB (оскільки записи TLB - це ярлики до записів таблиці сторінок), але помилки TLB будуть спричинені багатьма іншими речами, наприклад, жорсткими помилками або переходом у місцевість програми .


1

Незначні помилки сторінки виникають, коли сторінка вже завантажена в пам'ять, але пов’язана запис таблиці сторінок ще не створена. Як побічний ефект, незначні помилки на сторінці завжди спричиняють пропуски TLB. З іншого боку, промах TLB виникає, коли запис трансляції сторінки не міститься в TLB (який є кешем), що може статися, коли цей запис TLB раніше був виселений через обмежену ємність TLB.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.