http://ccache.samba.org/ is where part of this idea comes from.


Speeding up glsl conversion to gpu code will make things more effective.
There is no point running the glsl to native gpu conversions more times than
that are require particularly on devices or anything that is depending on
battery life.

This brings me to the second half of the idea common storage framework.

Directory struct that comes to mind for me.

/usr/shared/galuim3d/<target>/<application name>/<shader>/<version as
filename>

Target would contain glsl for like the raw glsl and like R300 for card
particular implementations as per a list.

Of course version of compiler would have to be  stuck at the start of the
pre built GPU code and checked on load.  If out of date rebuild.

Then like a opengl extension to request shared glsl code access.
galuim3dloader(application,shader,version) direct.
galuim3dloaderlatest(application,shader) just to load the newest version of
that shader.

Few advantages of common glsl storage applications able to share glsl code
like they can share libraries making it simple to implement fancy features
on the gpu.    Able to reduce how much glsl code has to be built to
particular cards.  And the possibility of allowing applications to migrate
from card to card of different types without issues.   Reason shader
information commonally exposed.

Same kind of caching for opencl would also be good.   No point wasting
cpu/gpu time running compilers when we can cache or store the results.

Of course these ideas really were not possible to implement without access
to raw GPU native code.

Peter Dolding
------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to