Mesa shader compiling/optimizing process is too slow

Tiziano Bacocco tiziano at tizbac.dyndns.org
Mon Jul 9 09:48:18 PDT 2012


I've done benchmarks and comparison between proprietary drivers and 
Mesa, Mesa seems to be up to 200x slower compiling the same shader, 
since i understand optimizing such part of code may take months or even 
more, i have thought to solve it this way:

Upon calling glLinkProgram , an unoptimized version of the shader ( 
compiles much much faster ) is uploaded to the GPU
Then a separate thread is launched that will optimize the shader and as 
soon it is done, on the next call to glUseProgram it will upload 
optimized version in place of unoptimized one.

This will solve many performance issues and temporary freezes with games 
that load/unload content while running, while not reducing performance 
once the background optimization is done


More information about the dri-devel mailing list