Memory access pattern: Difference between revisions

Content deleted Content added
No edit summary
Line 44:
 
=== 2D Spatially coherent ===
In [[3D rendering]], access patterns for [[texture mapping]] and [[rasterization]] of small primitives (with arbitrary distortions of complex surfaces) are far from linear, but can still exhibit spatial locality (e.g. in [[screen space]] or [[texture space]]) . This can be turned into good ''memory'' locality via some combination of [[morton order]]
<ref>{{cite web|title=The Design and Analysis of a
Cache Architecture for Texture Mapping|url=http://www.cs.cmu.edu/afs/cs/academic/class/15869-f11/www/readings/hakura97_texcaching.pdf}}see morton order,texture access pattern</ref>
and [[Tiling (computer graphics)|tiling]] for [[texture map]]s and [[frame buffer]] data (mapping spatial regions onto cache lines), or by sorting primitives via [[tile based deferred rendering]].<ref>{{cite web|title=morton order to accelerate texturing|url=http://john.cs.olemiss.edu/~rhodes/papers/Nocentino10.pdf}}</ref> It can also be advantageous to store matrices in morton order in linear algebra libraries.
<ref>{{cite web|title=Morton-order Matrices Deserve Compilers’ Support Technical Report 533|url=http://www.cs.indiana.edu/pub/techreports/TR533.pdf}}discusses the importance of morton order for matrices</ref>