ultimatecodewarrior
07-18-2009, 01:35 AM
Hi all!
I beg your pardon if this has been asked before, but I was not able to find a similar topic in the knowledge base :(
I have a very simple (ie mono-threaded) fullscreen OpenGL app. It works fine on many configurations, but on some dual cpu systems framerate becomes really "choppy", ie it continually changes between, say, 5fps and 200fps! Of course, the result is really bad (the animation is not very smooth, as you may imagine)...
I dunno what could be the problem. It shouldn't be a problem with timers because I use timeGetTime (I read that performance timers CAN give problems on multi cpus boxs, but timeGetTime should be safe enough); I've also tried to force my mono-threaded app to stay on just one CPU by setting the affinity mask (just in case), but it didn't help.
The problem seems to become worse with bigger textures and when using FBOs (but even with direct rendering to the "traditional" framebuffer it's still present). It doesn't happen on EVERY multi cpu box, but it happens on both nVidia AND Ati equipped hardware; sometimes, on nVidia, turning off the "optimize for multi-threaded apps" option from the nVidia control panel cures the problem, but sometimes it's still there...
Has anybody any clue about what could be the cause? Thank to everybody in advance for your time...
I beg your pardon if this has been asked before, but I was not able to find a similar topic in the knowledge base :(
I have a very simple (ie mono-threaded) fullscreen OpenGL app. It works fine on many configurations, but on some dual cpu systems framerate becomes really "choppy", ie it continually changes between, say, 5fps and 200fps! Of course, the result is really bad (the animation is not very smooth, as you may imagine)...
I dunno what could be the problem. It shouldn't be a problem with timers because I use timeGetTime (I read that performance timers CAN give problems on multi cpus boxs, but timeGetTime should be safe enough); I've also tried to force my mono-threaded app to stay on just one CPU by setting the affinity mask (just in case), but it didn't help.
The problem seems to become worse with bigger textures and when using FBOs (but even with direct rendering to the "traditional" framebuffer it's still present). It doesn't happen on EVERY multi cpu box, but it happens on both nVidia AND Ati equipped hardware; sometimes, on nVidia, turning off the "optimize for multi-threaded apps" option from the nVidia control panel cures the problem, but sometimes it's still there...
Has anybody any clue about what could be the cause? Thank to everybody in advance for your time...