Diskussion:Codeoptimierung — Änderungen 9471 → 9472

Zeile 24: Zeile 24:
 
::Da ist aber von 64 Bytes die Rede, nicht KB. Und das Zitat enthält keine Aussage, dass die Größe der Elemente gleich bleiben sollte. --[[Benutzer:TheThing|TheThing]] 15:51, 6. Feb. 2011 (CET)
 
::Da ist aber von 64 Bytes die Rede, nicht KB. Und das Zitat enthält keine Aussage, dass die Größe der Elemente gleich bleiben sollte. --[[Benutzer:TheThing|TheThing]] 15:51, 6. Feb. 2011 (CET)
 
:::Stimmt, es sollten natürlich 64 Bytes sein :) Und die Größe der Elemente stand doch gar nicht zur Debatte, oder? Aber von mir aus können wir auch gerne so einen Hinweis über den Artikel setzen, dass "der Autor sich nicht besonders auskannte" (wie bei [[USB]]) oder irgendjemand liest sich die obige Anleitung einfach mal richtig durch und verbessert den Artikel entsprechend.--[[Benutzer:Bjork|Bjork]] 16:24, 6. Feb. 2011 (CET)
 
:::Stimmt, es sollten natürlich 64 Bytes sein :) Und die Größe der Elemente stand doch gar nicht zur Debatte, oder? Aber von mir aus können wir auch gerne so einen Hinweis über den Artikel setzen, dass "der Autor sich nicht besonders auskannte" (wie bei [[USB]]) oder irgendjemand liest sich die obige Anleitung einfach mal richtig durch und verbessert den Artikel entsprechend.--[[Benutzer:Bjork|Bjork]] 16:24, 6. Feb. 2011 (CET)
 +
::Dass Speicherzugriffe keine 64-Byte-Grenze überschreiten sollen, bedeutet effektiv, dass alle Daten auf ihr natürliches Alignment ausgerichtet sein sollen. Also 4-Byte-Wörter auf 4-Byte-Grenzen, und 8-Byte-Wörter auf 8-Byte-Grenzen. Etwas Aufmerksamkeit ist lediglich erforderlich, wenn man 8-Byte-Zugriffe mit 4-Byte-Zugriffen mischt. Wenn ein 4-Byte-Wort auf einer 8-Byte-Grenze ausgerichtet ist, sollte man darauf achten, dass entweder Padding auf eine 8-Byte-Grenze oder ein weiteres 4-Byte-Wort folgt. Für Stackzugriffe wird (vom Compiler) immer die Variante Padding verwendet, für structs hat man das selbst oder der Compiler in der Hand. Das 16-Byte-Alignment ist soweit ich weiß eine ABI-Konvention, und keine Optimierung. --[[Benutzer:Jidder|Jidder]] 16:43, 6. Feb. 2011 (CET)