Hallo,
ein kleiner Nachtrag zur Diskussion über Hauptspeicherzugriffe bei dem Loop-Blocking-Beispiel:
Mein Konzept und Herr Baumgartner-Kis hatten Recht und ich Unrecht. ;-)
Es ist zwar korrekt, dass die B*B Datenelemente des Blocks in der Y-Matrix, die bei i=1 aus dem Hauptspeicher
geladen wurden, für die nächsten Durchläufe der i-Schleife im Cache bleiben. Was ich aber nicht beachtet hatte, war die
Tatsache, dass die Anzahl der Durchläufe der i-Schleife N ist und nicht B. Deshalb muss man für die Anzahl der Hauptspeicherzugriffe auf Y N^3 durch N dividieren und nicht durch B; es bleiben also N^2 Zugriffe und nicht N^3 / B.
Ich habe das auf den annotierten Folien geändert (siehe S. 19).
Viele Grüße
Christoph Scholl