HI !

> > > IMO, that switching to kernel mode, copying data structures, and re-
> > > turning back into user mode, may be too much time, and maybe when the 
> > > ioctl returns, you haven't enough time to copy your buffer.
> > No. That shouldn't matter much. I once measured a full ioctl round trip on
> > my old 486 to take 600 cycles. Given even that machine (486/66), this gives
> > an extra delay of about 10 microseconds. Shouldn't be the crucial point.

>       If you are drawing objects with little polygons (i.e. a torus with
> many polygon resolution), where each polygon can take 300 cycles or less,
> it's very crucial, I think.

We were talking about the return from a waitretrace type IOCTL. If you draw 
lots of Poly's afterwards, it will be a matter of one ploy more or less than can be 
drawn without flicker.

>       In fact, in 2D accel, I only draw hlines by hardware when they are
> more than 100 pixels in length, because if they are shorter, drawing by
> hardware is mucho more slow (because of the ioctl call?).

Yes. ioctl overhead is - as said - about 600 cycles on a 486, maybe less 
on newer archs.

This is also why LibGGI originally had heuristics on when not to try 
acceleration. We should put those back in btw ...

CU, Andy

-- 
Andreas Beck              |  Email :  <[EMAIL PROTECTED]>

Reply via email to