On Mon, Mar 1, 2010 at 12:43 PM, Joakim Sindholt <b...@zhasha.com> wrote:
> On Sun, 2010-02-28 at 20:25 +0100, Jerome Glisse wrote:
>> Hi,
>>
>> I am a bit puzzled, how a pipe driver should handle
>> draw callback failure ? On radeon (pretty sure nouveau
>> or intel hit the same issue) we can only know when one
>> of the draw_* context callback is call if we can do
>> the rendering or not.
>>
>> The failure here is dictated by memory constraint, ie
>> if user bind big texture, big vbo ... we might not have
>> enough GPU address space to bind all the desired object
>> (even for drawing a single triangle) ?
>>
>> What should we do ? None of the draw callback can return
>> a value ? Maybe for a GL stack tracker we should report
>> GL_OUT_OF_MEMORY all way up to app ? Anyway bottom line
>> is i think pipe driver are missing something here. Any
>> idea ? Thought ? Is there already a plan to address that ? :)
>>
>> Cheers,
>> Jerome
>
> I think a vital point you're missing is: do we even care? If rendering
> fails because we simply can't render any more, do we even want to fall
> back? I can see a point in having a cap on how large a buffer can be
> rendered but apart from that, I'm not sure there even is a problem.
>

Welcome to GL. If I have a 32MB graphics card, and I advertise
a maximum texture size of 4096x4096 + cubemapping + 3D textures,
there is no nice way for the app to get a clue about what it can legally
ask me to do. Old DRI drivers used to either use texmem which would
try and scale the limits etc to what it could legally fit in the
memory available,
or with bufmgr drivers they would check against a limit from the kernel,
and in both cases sw fallback if necessary. Gallium seemingly can't do this,
maybe its okay to ignore it but it wasn't an option when we did the
old DRI drivers.

Dave.

------------------------------------------------------------------------------
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