Linux-Befehl perf für Cache-Referenzen

Ich möchte die Cache-Fehlerrate meines Codes messen. Wir können Perf-Liste verwenden, um unterstützte Ereignisse anzuzeigen. Mein Desktop hat einen Intel (R) Core (TM) i5-2400-Prozessor mit 3,10 GHz, die Perf-Liste enthält Cache-Aktualisierungen und Cache-Fehlschläge wie folgt:

  cpu-cycles OR cycles                               [Hardware event]
  stalled-cycles-frontend OR idle-cycles-frontend    [Hardware event]
  stalled-cycles-backend OR idle-cycles-backend      [Hardware event]
  instructions                                       [Hardware event]
  cache-references                                   [Hardware event]
  cache-misses                                       [Hardware event]

Ich denke, Cache-Misses sind Hardware-Event-LLC-Misses gemäß dem Handbuch des Intel Architectures Software-Entwicklers zugeordnet (ich bestätige dies durch einen Vergleich)perf stat -e r412e undperf stat -e Cache-Misses, sie gaben fast identisches Ergebnis). Aber wie werden Cache-Referenzen gezählt? Ich habe weder ein Ereignis noch eine Möglichkeit gefunden, mithilfe vorhandener Hardwareereignisse Gesamtcachereferenzen abzurufen. Ich frage mich also, ob diese Cache-Referenzen auf meinem Computer korrekt sind?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage