On Sat, Mar 13, 2010 at 3:13 AM, Peter Dolding <oia...@gmail.com> wrote: > 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.
Already done, at least the parts that make sense. We have a system called CSO (Constant State Objects) that caches native shader objects. We don't store them as files for a handful of reasons; the largest reason is that shaders need to be recompiled depending on other state inside the driver. -- Corbin Simpson <mostawesomed...@gmail.com> ------------------------------------------------------------------------------ Download Intel® 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