On Fri, 2007-12-14 at 05:45 +0000, Dave Airlie wrote:

> >From my POV this would make doing a proper GPU scheduler a bit harder as 
> we wouldn't have all the info in-kernel to schedule operations, we would 
> be doing a lot of app blocking..

True GPU scheduling would require that we be able to interrupt a batch
buffer and restart it. With kernel relocations, you could move buffers,
re-evaluate the relocations and restart the batch buffer. That seems
like a fairly cool possibility. I can imagine trying to make this work
with user-space relocations, but I have to admit it sounds painful and
error prone.

> the bigger problem as I see it is live-lock, 2 apps hammering would stop 
> each other from ever going anywhere, which means we would need a lot of 
> smarts (possibly said scheduler) to decide which app to get set going and 
> which to block.. I can just imagine races if you block the X server while 
> moving windows around, as you can't always let the server win otherwise 3D 
> apps would never draw, but 3D apps would needs to talk to the X server 
> etc.. it just seems to be a larger problem than just handwaving "a while".

Yeah, having an API which was guaranteed to make progress is a nice
property. I'll continue to poke at ways to reduce the cost of
relocations; there are additional opportunities to reduce the cost of
providing relocation data to the kernel.

-- 
[EMAIL PROTECTED]

Attachment: signature.asc
Description: This is a digitally signed message part

-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to