To fill people in (there has been off-list discussion leading up to this), the
idea here is that in many situations, "autotile" is not performing well at all,
in part because when a 'tile' leaves the cache and is needed again, the whole
row of tiles must be read (because it's a scanline-oriented file). This
solution gives a way to make the auto-tiles be the full image width wide.
Ramon reports scenes where this improves performance by 5-7x!
-- lg
On Nov 3, 2011, at 7:57 PM, rmv wrote:
> If autoscanline is off, to load a 64x64 tile that has been purged you need to
> read in again the whole 4096x64 scanlines.
>
> With it on, auto-tiles are set, for example, to 4096x64. This forces the
> cache to work with batches of 64 scanlines.
>
> This corresponds better with the loading costs of untiled images and
> improves cache performance, specially when more threads are accessing the
> same image.
>
>
> You can merge this Pull Request by running:
>
> git pull https://github.com/rmv/oiio autoscanline
>
> Or you can view, comment on it, or merge it online at:
>
> https://github.com/OpenImageIO/oiio/pull/190
>
> -- Commit Summary --
>
> * Added autoscanline option to make autotiles as wide as the whole image.
>
> -- File Changes --
>
> M src/include/imagecache.h (1)
> M src/include/texture.h (1)
> M src/libtexture/imagecache.cpp (21)
> M src/libtexture/imagecache_pvt.h (2)
>
> -- Patch Links --
>
> https://github.com/OpenImageIO/oiio/pull/190.patch
> https://github.com/OpenImageIO/oiio/pull/190.diff
>
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/OpenImageIO/oiio/pull/190
--
Larry Gritz
[email protected]
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org