Better FPS in Windowed mode when CoX doesn't have Focus?
Because it has focus. Any applicaiton that's given focus has higher priority and takes more resources.
Granted I think i17 is taking up more CPU than before even with UM off but applications that have focus always have a higher priority and take up more resources.
Because it has focus. Any applicaiton that's given focus has higher priority and takes more resources.
|
A similar effect is also apparent here.
Because it has focus. Any applicaiton that's given focus has higher priority and takes more resources.
Granted I think i17 is taking up more CPU than before even with UM off but applications that have focus always have a higher priority and take up more resources. |
Similar reason why you get higher fps when staring directly at a wall or your FPS goes up when there's a loading screen.
It has always been this way.
Similar reason why you get higher fps when staring directly at a wall or your FPS goes up when there's a loading screen.
|
With the same amount of activity and objects in your field of view, what's the mechanism where having the focus on the game vs taking it off is similar to staring at a wall or loading screen?
I don't think you're understanding. This is not the same as looking at a wall vs looking out at the city. This is switching from the CoH game client, to another application, and the game's fps going UP, instead of down like one would think would happen due to another application taking focus. This is not normal behaviour.
|
http://boards.cityofheroes.com/showthread.php?t=220807
The user Head_Healer is describing pretty much the same thing. Anyone reading this that cares to, do a test. Download FRAPS, so we're all on the same page. Next put CoX in windowed mode, resize the interface to give yourself some room, find a place in game that gives your a representative FPS, note it, then open a browser window and shift your focus to it, making sure to keep CoX and the frame counter visible in the background. Note what happens here. Thanks in advance for your help.
It's not hard to understand. When the game is in the background, even if the graphics are still rendering, it stops processing sound, stops reading the inputs, stops doing anything that basically isn't essential to playing the game in real time. This reduces the load on the CPU and frees up more cycles to process the graphics.
And yes, the CPU is involved in processing the graphics, not just the GPU on the graphics card.
I'm also of the opinion that the new graphics engine is consuming more CPU power, even without UM features running. There have just been too many complaints of degraded performance that seem to tie back in to CPU utilization.
It's not hard to understand. When the game is in the background, even if the graphics are still rendering, it stops processing sound, stops reading the inputs, stops doing anything that basically isn't essential to playing the game in real time. This reduces the load on the CPU and frees up more cycles to process the graphics.
And yes, the CPU is involved in processing the graphics, not just the GPU on the graphics card. I'm also of the opinion that the new graphics engine is consuming more CPU power, even without UM features running. There have just been too many complaints of degraded performance that seem to tie back in to CPU utilization. |
Don't get me wrong, I saw your post in the other thread. I've no desire to start a QQ fest at the devs either. No nerd raging. But if it quacks like a duck, walks like a duck, and swims like a duck then it's a duck. And this is a bug, just no two ways around it.
Just to give some more observations setting to "performance" on the slider. With focus 15fps, 60% cpu utilization. Without focus, 60fps, 90% cpu utilization. "Recommended", with focus, 13fps, 70% CPU utilization, without focus, 37fps & 85% cpu utilization. "Quality" evens out the score on FPS at 13. Here's the kicker though, with focus CPU utilization @95+. Without.... 70%. So it changes over when I switch it to quality and acts like I expect it would. Note though, there's not a big drop in FPS with this lower CPU. In fact it still goes up +1 or +2. Very very odd behavior, I'd say. I've never played the game at Quality before, Recommended was always enough for me, but in all the lower end cases, it uses more cpu when out of focus than in. That just doesn't jive with the less to keep track of theory.
Not hard to understand? So let me get this right. I set CoX to Minumum now as a test. With focus, 16fps. Without focus, 74fps. So what you're implying is that tracking my input and playing the sound cost 58fps? Wow. That's a lot of overhead.
Don't get me wrong, I saw your post in the other thread. I've no desire to start a QQ fest at the devs either. No nerd raging. But if it quacks like a duck, walks like a duck, and swims like a duck then it's a duck. And this is a bug, just no two ways around it. Just to give some more observations setting to "performance" on the slider. With focus 15fps, 60% cpu utilization. Without focus, 60fps, 90% cpu utilization. "Recommended", with focus, 13fps, 70% CPU utilization, without focus, 37fps & 85% cpu utilization. "Quality" evens out the score on FPS at 13. Here's the kicker though, with focus CPU utilization @95+. Without.... 70%. So it changes over when I switch it to quality and acts like I expect it would. Note though, there's not a big drop in FPS with this lower CPU. In fact it still goes up +1 or +2. Very very odd behavior, I'd say. I've never played the game at Quality before, Recommended was always enough for me, but in all the lower end cases, it uses more cpu when out of focus than in. That just doesn't jive with the less to keep track of theory. |
And yes, the more graphics features you enable or the higher you tune them, the more resources the graphics engine is going to consume, when it can. However, when the game comes back to the foreground, all the other game functions cap how much the graphics engine can hog for itself.
If you need an analogy, the behavior you're seeing with Performance is like a motionless car on a flat road idling higher when it's out of gear than when it's in gear and creeping forward. Conversely, the higher settings are like putting the car on a hill, it has to rev higher to climb the grade.
All that being said, however, I do basically agree with you. I think the graphics engine is over-consuming resources. I differ on classifying it as a "bug" because it's actually working. It's just inefficient in its current state. Hopefully it will be made more efficient. If not, then the game's minimum requirements have just grown.
When the game goes to the background, the graphical engine is just rendering the same static frame over and over. Yeah, it does that a lot faster, especially when the game "knows" that it's not going to get any meaningful updates, because the app is in the background. It's still keeping track of the data the game server is sending it but it's not displaying it because it knows you're not paying attention to it.
|
You did say that you were parking the character just looking at a wall or something, correct? When the game goes to the background, the graphical engine is just rendering the same static frame over and over. Yeah, it does that a lot faster, especially when the game "knows" that it's not going to get any meaningful updates, because the app is in the background. It's still keeping track of the data the game server is sending it but it's not displaying it because it knows you're not paying attention to it.
|
I've also tracked process priority this time. When CoX has focus, it's setting itself to "Above Normal" when it doesn't it's "Below Normal." This makes sense. The fact that it uses more CPU at Below Normal than Above however doesn't.
Anyway, the analogy doesn't fly. It's not a motionless car. It's doing pretty much everything it normally does from what I can see, with the notable exception of playing the sound and tracking my input. And there is a opposite swing to QQ'ng and nerd raging and that's being apologist. It's just as bad, IMO. Saying things like "the minimum has just gone up" doesn't cut it for me. If the minimum has gone up, I shouldn't be able to run "Minimum" at 74 fps when the application is out of focus. The minimum hasn't gone up, something has gotten borked up and hopefully it will be fixed up. On that, we can agree.
The game doesn't display the same static frame over and over when it's in the background though. It continues to process updates. If you're standing where you can see activity you can still see it going on, updating with people moving, fighting, etc while the focus is off the game.
|
I said parked, not parked looking at nothing or a wall. I'm parked in the D' with plenty of people and effects moving by all the time. Other people's characters coming in and out, flaming their flames, blasting their blasts. The works. Sorry, it's just not as simple as "it's in the background doing nothing so it's easier." It is still keeping track of the server, it's still doing meaningful updates. I see them dancing and jiving right now as my character sits on this bar stool. The only difference is that when CoX has focus I see them doing their thing at a lot less FPS then I do when it doesn't have it.
I've also tracked process priority this time. When CoX has focus, it's setting itself to "Above Normal" when it doesn't it's "Below Normal." This makes sense. The fact that it uses more CPU at Below Normal than Above however doesn't. Anyway, the analogy doesn't fly. It's not a motionless car. It's doing pretty much everything it normally does from what I can see, with the notable exception of playing the sound and tracking my input. And there is a opposite swing to QQ'ng and nerd raging and that's being apologist. It's just as bad, IMO. Saying things like "the minimum has just gone up" doesn't cut it for me. If the minimum has gone up, I shouldn't be able to run "Minimum" at 74 fps when the application is out of focus. The minimum hasn't gone up, something has gotten borked up and hopefully it will be fixed up. On that, we can agree. |
I find it funny to be accused of being an apologist, though, considering that earlier today I was defending the "it's eating CPU" hypothesis to the "update your drivers" crowd.
And while I don't want the system requirements to go up, unfortunately it's just a possibility that they may not be able to retrofit these features onto code that was first written something like nine years ago without consequence. That figure includes both lifetime of the game and a standard guess of ~3 years pre-release development time.
Originally Posted by Starjammer
I find it funny to be accused of being an apologist, though, considering that earlier today I was defending the "it's eating CPU" hypothesis to the "update your drivers" crowd. |
And while I don't want the system requirements to go up, unfortunately it's just a possibility that they may not be able to retrofit these features onto code that was first written something like nine years ago without consequence. That figure includes both lifetime of the game and a standard guess of ~3 years pre-release development time.
|
The thing is though, the minimum system requirements haven't really gone up. The game is just broken in certain environments.
|
The big question is whether the latter situation can be improved upon with the tech available to the programmers? I.e., within the limits of what they can feasibly, technically accomplish. I expect so and I hope so. I also expect that they're busy working to try their best. But we don't know what the outcome of that will be.
I, however, am very curious to see what the Friday afternoon Test Server patch will be aimed at.
If CoX seems to run better when in the background, it would seem that CoX is starving the resources of the system when it is active?
Have you tried going into your system control panel and tweaking the advanced system settings -> performance to background services to see what happens to your game performance?
If CoX seems to run better when in the background, it would seem that CoX is starving the resources of the system when it is active?
Have you tried going into your system control panel and tweaking the advanced system settings -> performance to background services to see what happens to your game performance? |
I've also tracked process priority this time. When CoX has focus, it's setting itself to "Above Normal" when it doesn't it's "Below Normal." This makes sense. The fact that it uses more CPU at Below Normal than Above however doesn't.
|
If it is indeed a mistaken setting causing the game to shove aside other Above Normal processes like device drivers, etc) that would be a plausible explanation for a wide variety of problems (the wonky framerates, wireless network conflicts, ventrillo conflicts, ATI hotkey poller, etc) and it would make sense as to why the symptoms manifest a little differently depending on the particulars of your system setup.
On further consideration, this could be the whole issue right here. Did the game always run at Above Normal (10) in the past? A casual survey of other processes seems to show that only things like device drivers and core system processes run at above normal. Other applications, including other resource hungry things like other MMO games, run at Normal (8) priority.
If it is indeed a mistaken setting causing the game to shove aside other Above Normal processes like device drivers, etc) that would be a plausible explanation for a wide variety of problems (the wonky framerates, wireless network conflicts, ventrillo conflicts, ATI hotkey poller, etc) and it would make sense as to why the symptoms manifest a little differently depending on the particulars of your system setup. |
Ok, so I decided to download the Test and see if the Training Room has the same problems. Guess what... it DOESN'T. No driver changes, no setting changes, no arcane rubbing my belly and while standing on my head with a mouthful of marbles and a cockatrice perched on my foot. It just freaking works. And to answer the priority question, it runs the same way as the retail release, above normal with focus, below normal without it. But the frame rates are identical with the test build. So I think I have my answer. i17 is borked and it's been fixed, at least my problem has been. Now if they'll just release the current build of the test, maybe I can actually play a little.
What I might do is do a completely fresh install of CoX. Perhaps something's been borked in my original install and when I downloaded the Test to a new location that problem was removed from the equation. Worth a shot.
Ok, several hours of re-download later and nope, i17 is borked. Test server is fine, but the release is non-functional (well, functional but not at a playable level). So I guess that's kind of good news. I mean there's a solution out there and as soon as they release it, I'm good. As soon as they release it... *sigh*.
I'd look for a Tuesday release as a most likely candidate. They'll come in on Monday, assess the results from the weekend testing, look at any /bug reports or other issues that were reported and if all looks good start to get it ready for a Live roll-out. That's if nothing unexpected happens and something majorly wrong is reported. You may not have run across it, but someone else may have. It may only occur in a particular situation, but it's one that is likely to occur on Live.
That's the only type of thing I can see delaying it. So, likely Tuesday, possibly Wednesday. That gives them time if something is reported once it hits Live that didn't happen on Test that they can identify the problem, find a solution and put up a build to Test over the next weekend.
If the game spit out 20 dollar bills people would complain that they weren't sequentially numbered. If they were sequentially numbered people would complain that they weren't random enough.
Black Pebble is my new hero.
So today is patch day and... no joy. That's right, Test still works for me, Release still doesn't. *sigh* Maybe customer service will give me my money back for the month or something. Doubt it, but it's worth contacting them to make them say no. Very disappointing in any event.
I signed up for CoX again when I heard about i17, because I wanted to see what was up and what had changed. I was very surprised though to see a large performance drop (I used to get 25-30 now I get 10-15) even with the lowest settings. In investigating the problem, I discovered that if I switch to windowed mode and move focus from CoX to say this browser window, all of a sudden FRAPS reports that I'm back to my old FPS. Give CoX focus again and right back down it goes. So my question to the community is this, "What would cause an application given focus to have worse performance than when it was set to the background?" Ideas? And please, don't bother with the driver update solution. I've been at this a while, I've upgraded drivers to the most recent available for my hardware. Thanks in advance for any thoughts you might have on this issue.
Briefly: Dell M90, Quadro FX 1500M (yes, I know it's unsupported. I use this machine for more than play and it's always worked with CoX just fine., 2GB RAM, XP Pro SP3.