Rechenintensität
Rechenintensität, im Englischen auch arithmetic intensity genannt, ist ein Maß für die Effizienz eines Algorithmus hinsichtlich der Speicherbandbreite. Sie beschreibt das Verhältnis der Anzahl arithmetischer Operationen zu der Menge der dabei verschobenen Daten. Formell lautet die Kennzahl I = FLOPs / BytesMoved. BytesMoved umfasst die Datenzugriffe zwischen Prozessor und Speicher (und je nach Modell auch den Cache). Die Rechenintensität hängt stark von der Datenreuse ab: Durch gute Wiederverwendung von Daten im Cache lässt sich der Datenverkehr verringern und I erhöhen.
Bedeutung und Anwendung: Die Rechenintensität dient der Einordnung, ob eine bestimmte Anwendung eher speicher- oder rechengebunden
Beispiele: Bei einer Vektoraddition C := A + B führt man pro Element eine Fließkomma-Operation durch, aber drei
Optimierung: Um die Rechenintensität zu erhöhen, nutzt man Techniken wie Blocking/Tiling, um Daten wiederzuverwenden und Cache-Hierarchien
Siehe auch: Roofline-Modell, FLOPs, Speicherbandbreite, Cache-Hierarchie.