Comando per misurare i mancati TLB su LINUX?


11

Qualcuno potrebbe indirizzarmi a un comando per misurare i mancati TLB su LINUX, per favore? Va bene considerare (o approssimativamente) errori di pagina minori come mancano TLB?

Risposte:


10

Puoi usare perf per accedere ai contatori delle prestazioni hardware:

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

per esempio :

$ 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

Un errore minore e un errore TLB non sono analoghi validi. Un errore minore si verifica quando una pagina richiesta è in memoria ma non è mappata nella tabella delle pagine corrente. Sarebbe certamente il caso che un errore minore verrà associato a un errore TLB (poiché le voci TLB sono collegamenti alle voci della tabella delle pagine) ma gli errori TLB saranno causati da molte altre cose, ad esempio guasti gravi o una transizione nella località di un programma .


1

Errori di pagina minori si verificano quando la pagina è già caricata in memoria, ma la voce della tabella di pagine associata non è ancora stata creata. Come effetto collaterale, errori di pagina minori comportano sempre errori TLB. D'altra parte, si verifica un errore TLB quando la voce di traduzione per una pagina non risiede nel TLB (che è una cache), che può accadere quando quella voce TLB era stata precedentemente sfrattata a causa della capacità limitata del TLB.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.