• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

RC5 runs at lowest priority?

downhiller80

Platinum Member
I'm developing an OpenGL app in C++ and when I run it Task manager shows that it is using 61% of my CPU and RC5 obviously grabs the rest.

Now the odd thing is if I quit RC% I'd expect system idle to take over, but in fact my OpenGL app hogs all 100% of the CPU.

Does this mean my program is coded to run as an idle process? Do I have to add some code to make it run at normal priority (or higher)?

Seb
 
thats interesting, what OS are you on?

Heres my stab in the dark:
The OS knows it has things to do (which are all organized into threads, and are each given a priority number) when there is no work to be done, the idle process thread runs, and pretty much does nothing. When you have RC5, which never runs out of work, there is always something else to do, so whenever the OpenGL program isnt doing anything TOO important, RC5 gets some time, but if all that is running is OpenGL, the OS knows that there is nothing else to do, so just doesn't switch off OpenGL, therefore it takes up 100% only when there is nothing else to do.
 
There's a pretty easy way to check the priority of the OpenGL app. If you're in Win95/98, just open up Wintop and check on the priority of the OpenGL app. In WinNT/2000 I think you can do the same with the Task Manager. If it is at idle priority, then that might explain why it shares with the dnet client.
 
If your program is waiting for data e.g. to load a file from HD, then no matter how high it's priority, it will yield to other programs.

This is quite easily demonstrated by writing a program that generates huge files and reads/writes to them.

I suppose that if you use a wait-for-VSync function, then it might do the same thing - halting your program, until an appropriate time.
 
Well it says it's at normal priority.

I just tried leaving it and RC% running togeather for an hour and the CPU time results were RC5 = 1 hour and opengl = 6 seconds!

Hmmmm. Something odd about that 60/40 split in the CPU usage column!

Seb
 
Back
Top