On May 16, 2005, at 8:12 AM, Scott Ahten wrote: I'm working on a video mixer application which uses the Core Video display link thread to render Quicktime movie frames as OpenGL textures. This problem doesn't seem to be effecting my application.
I can set a prefs value and MacFOH will utilize CVDisplayLink instead of SKWDisplay VBL sync. The results of profiling using the same setup and realtime analyzer document are:
CVDisplayLink Tiger 10.4.1 CGS Beam Sync enabled 4.93% OpenGL glFlush 410 µS SKWDisplay Tiger 10.4.1 CGS Beam Sync enabled 3.88% OpenGL glFlush 256 µS
CVDisplayLink Tiger 10.4.1 CGS Beam Sync disabled 3.00% OpenGL glFlush 128 µS
SKWDisplay Tiger 10.4.1 CGS Beam Sync disabled 2.87% OpenGL glFlush 107 µS
SKWDisplay Panther 10.3.9 1.32% OpenGL glFlush 62 µS Are you saying that auto-beam-sync doesn't work as advertised
So far, it does not improve performance, in fact it is quite the opposite. Its implementation needs to be rethought. or you think that blocking in flush() when drawing faster than the screen refresh rate is a "Bad Idea"?
I think introducing blocking to anything (especially something that didn't previously block) is generally a bad idea, unless it's a specific API designed to block. Completion callbacks would be better, and allow developers to elect their use.
I designed an API for rendering management that is superior IMO, and it would be great to incorporate it into OpenGL/CGS/CV so everything would enjoy the same high performance and low latency as MacFOH (under Panther). Until these glaring Tiger/CGS bugs are resolved, I'm staying with Panther, and will continue to recommend that my users resist upgrading. Dual-monitor window dragging on Tiger is currently so pathetic that I can't even read the window contents because it jitters so badly when windows cross the screen boundary.
Previous seeds in the range 393-414 provided substantially better performance, then it was broken again. -- Shaun Wexler MacFOH http://www.macfoh.com
"Intellectuals solve problems, geniuses prevent them." - Albert Einstein
|