[Mesa-dev] [PATCH] glsl2: performance regression with import_prototypes

Ian Romanick idr at freedesktop.org
Wed Aug 4 09:01:25 PDT 2010


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Aras Pranckevicius wrote:
> Hi,
> 
> Attached patch - or alternatively, this github
> commit: http://github.com/aras-p/glsl-optimizer/commit/cb5b9ad7b439eddaedc54147f41727a661d11b21 -
> fixes GLSL2 performance problems after many shaders are processed.
> 
> When constructing builtin functions, they are put into global memory
> pool (once), and their prototypes cloned into current shader. However,
> the cloned prototype variables were still using the global memory pool,
> which then makes talloc_parent's O(N) complexity really visible after a
> while.

That shouldn't happen.  The parameter ir_variable allocations should get
reparented later when the whole IR tree is reparented by reparent_ir.
Or am I misunderstanding something here?
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkxZjtQACgkQX1gOwKyEAw/cfwCcCUc1eZmDxW/JEUXZt1JTKJ0h
MHgAmgLDSitnAReWzK+wGNq/W2ir51AP
=XLlB
-----END PGP SIGNATURE-----


More information about the mesa-dev mailing list