Very Slow performance/fps in Defcon. (Solved, bug report)
Posted: Fri Jun 20, 2008 5:51 pm
I've been attempting to get the Defcon demo working lately, someone mentioned the game and i though i'd give it a go. Unfortunately i was suffering from a problem i think i few people have had for various reason. Despite my very good pc (details below) i was getting very poor frame rates, (less than 5fps). None of the conventional stuff worked for me, changing graphics drivers etc.
After a lot of fiddling about i basically tracked down the problem to BONIC, which is a folding@home like distributed computing program, bonic allows you to run processing from several different projects all in one place i run four different cores all the time. These cores run in "Low" processor priority mode so that any other process that needs cpu time set to "Normal" priority should get processed before the cores. In essence they should only use wasted cycles. When i run defcon without bonic running it runs fine using like 25-29% cpu (where 100% is four cores running full) and it has lovely high fps as you would expect. When i run defcon with bonic running in the background defcon only uses about 1-5% cpu and has very low fps.
Clearly the solution to this problem is not to run background processing applications, seti@home, folding@home, BONIC, etc whilst trying to play defcon. But additionally I feel this is a bug in the programming of defcon. As far as i can work out one of defcon's threads must be also running in low priority which explains why it will swallow up a cpu if nothing else is running, but use only 1-5% when something else is running in the background. Im not sure the reasoning behind this allocation but using something like ThreadPriority.BelowNormal instead would allow the thread to still be lower priority than the normal threads thus not cause them slowdown, but at the same time all it to remain higher than background processing applications and prevent the game from being slowed down by them.
PC Stats
Intel Q6600 2.4GHz Core 2 Quad
4GB RAM
nVidia Geforce 8800GT (512mb)
Windows XP Professional 64Bit Edition
I guess this is all you really need, any more info gimme a shout.
After a lot of fiddling about i basically tracked down the problem to BONIC, which is a folding@home like distributed computing program, bonic allows you to run processing from several different projects all in one place i run four different cores all the time. These cores run in "Low" processor priority mode so that any other process that needs cpu time set to "Normal" priority should get processed before the cores. In essence they should only use wasted cycles. When i run defcon without bonic running it runs fine using like 25-29% cpu (where 100% is four cores running full) and it has lovely high fps as you would expect. When i run defcon with bonic running in the background defcon only uses about 1-5% cpu and has very low fps.
Clearly the solution to this problem is not to run background processing applications, seti@home, folding@home, BONIC, etc whilst trying to play defcon. But additionally I feel this is a bug in the programming of defcon. As far as i can work out one of defcon's threads must be also running in low priority which explains why it will swallow up a cpu if nothing else is running, but use only 1-5% when something else is running in the background. Im not sure the reasoning behind this allocation but using something like ThreadPriority.BelowNormal instead would allow the thread to still be lower priority than the normal threads thus not cause them slowdown, but at the same time all it to remain higher than background processing applications and prevent the game from being slowed down by them.
PC Stats
Intel Q6600 2.4GHz Core 2 Quad
4GB RAM
nVidia Geforce 8800GT (512mb)
Windows XP Professional 64Bit Edition
I guess this is all you really need, any more info gimme a shout.