Gemäß Perf-Tutorial Performance Monitoring Unit (PMU) events oder Hardwareereignisse beziehen sich auf jene Ereignisse, die direkt CPU-spezifischen Ereignissen für einen CPU-Anbieter zugeordnet werden können. Aber die Hardware-Cache-Ereignisse beziehen sich auf einige Moniker für Hardwareereignisse, die von perf
bereitgestellt werden , die tatsächlichen Ereignissen zugeordnet werden können, die von der CPU bereitgestellt werden. Für die Liste von perf
Die Cache-Ereignisse von verwenden perf list cache
im Linux-Terminal.
Einige Antworten:
L1
ist der Level-1-Cache, der kleinste und schnellste.LLC
hingegen bezieht sich auf die letzte Ebene der Cache-Hierarchie und bezeichnet somit den größten, aber langsamsten Cache.i
vs.d
unterscheidet den Instruktions-Cache vom Daten-Cache. Nur L1 wird auf diese Weise aufgeteilt, andere Caches werden zwischen Daten und Anweisungen geteilt.TLB
bezieht sich auf den Übersetzungs-Lookaside-Puffer, einen Cache, der verwendet wird, wenn virtuelle Adressen auf physische abgebildet werden.- Unterschiedliche TLB-Zähler, je nachdem, ob sich die benannte Adresse auf eine Anweisung oder einige Daten bezieht.
- Für alle Datenzugriffe werden unterschiedliche Zähler geführt, je nachdem, ob der angegebene Speicherplatz gelesen, geschrieben oder vorab abgerufen (d. h. zu einem späteren Zeitpunkt zum Lesen abgerufen) wurde.
- Die Anzahl der Fehler gibt an, wie oft auf ein bestimmtes Datenelement zugegriffen wurde, aber nicht im Cache vorhanden.
Sie scheinen zu glauben, dass die cache-misses
event ist die Summe aller anderen Arten von Cache-Misses (L1-dcache-load-misses
, usw). Das stimmt eigentlich nicht.
die cache-misses
event stellt die Anzahl der Speicherzugriffe dar, die von keinem der Caches bedient werden konnten.
Ich gebe zu, dass die Dokumentation von perf nicht die beste ist.
Man kann jedoch ziemlich viel darüber lernen, indem man (vorausgesetzt, Sie haben bereits gute Kenntnisse darüber, wie eine CPU und eine Leistungsüberwachungseinheit funktionieren, dies ist eindeutig kein Computerarchitekturkurs) das Dokument der Funktion perf_event_open() liest:
http://web.eece.maine.edu/~vweaver/projects/perf_events/perf_event_open.html
Wenn Sie es lesen, können Sie beispielsweise sehen, dass der cache-misses
Das von der Leistungsliste angezeigte Ereignis entspricht PERF_COUNT_HW_CACHE_MISSES