CIV 4 Performance Analysis

You know, I am FOREVER spelling weird wrong. Always. And I am usually very good when it comes to spelling - but weird has always been an Achilles heel (see, I can spell Achilles. And anthropomorphism. And obsequious. But not weird...)

Venger
 
It might be possible to fix the waiting for leaders by rebooting. Atleast something fixed it for me and that's the only thing I can think of that might have done it.
 
I ran a perfmon for and hour and 1/2 and can pretty much verify the OP's conclusions.

Civ4 uses a LOT of resources. It reserves a lot of page memory space for itself...however this is really not that big of an issue as XP handles the management pretty well.

The biggest bottleneck is CPU utilization. Perfmon verifies that the Civ4.exe averaged 94.5% CPU utilization over the coarse of the test.

The graphic card counters are pretty consistent too; civ4 is not putting any excess on the graphics hardware.

My feeling is that soution to most of the issues also lie in optimization; whether of the game, graphics drivers or other software components. The shader engine is perhaps the most likely candidate; most of the weird graphics bugs that have been described seem to involve the 'graphic 'layering' in the game. The fact that the issues are cross-card seem to point to an optimization issue with the way Python, XML, DirectX and the shader component of the graphic's drivers are playing together.

Not pointing fingers or laying blame here; just trying to get info out that may be useful to those trying to resolve the issues.

Anyone wanting my perflogs, feel fre to PM me with an FTP site to send them to; I'd post them but the zip is 14.5 MB - a bit large.

Athlon 2400 CPU 1GB Sys RAM ATI Radeon 9550 AGP 256 w/5.10 drivers WinXP sp2 w/all hotfixes DirectX 9c as provided by Firaxis
 
Shadowlord said:
There's a mod already which changes the animated leaderheads to simple unanimated portraits. I'd say it's worth a try: http://apolyton.net/forums/showthread.php?s=&threadid=141770
Loading the leaderheads for diplomacy is DEFINITELY the hardest work my little machine has to do. But the heads are so well done, it's fun to look at them... (I also am working on "personal" avatars so that I can load a (rough) 3D model of MYSELF in, and do all the modding so that people can actually address a caricature of ME :D .... still in the early stages of this, though...might have to wait for the SDK)
 
When looking at CPU utilization, remember that the even Civ2 used 100% CPU - telling your program to dinput(x) while waiting for input will rev the CPU. It wasn't that it's hard at work, it's just the program looping waiting for input. Now mind you, that has always been a bugaboo of mine, an idling program burning cycles, but it may or may not be related to how hard it really is working.

Venger
P.S. On my Civ4, it shows 50% since I have two CPUs - and never really moves off of it.
 
Venger said:
When looking at CPU utilization, remember that the even Civ2 used 100% CPU - telling your program to dinput(x) while waiting for input will rev the CPU. It wasn't that it's hard at work, it's just the program looping waiting for input. Now mind you, that has always been a bugaboo of mine, an idling program burning cycles, but it may or may not be related to how hard it really is working.

Venger
P.S. On my Civ4, it shows 50% since I have two CPUs - and never really moves off of it.
That would be consistent.

As you say, high CPU usage may or may not really be an indication of exactly how hard the game is working; but some of the other counters in the perflog seem to indicate that overall it does give the cpu and the system a workout. I feel I have a fairly midrange setup overall, and for me performance overall has not been too bad; my major issues are the consistent yet unpredictable CTD's and the stuttering audio and video. (BTW, when playing the video's with the Bink player outside the game - they are fine.) Of coarse, I have not played a game into the modern era yet as I can't get it that far without crashing constantly, so I cannot speak to performance then. Maybe this weekend I will have a long enough block of free time to try to keep reloading to get there.

Being a new program, using a new build of the Gambryo engine, using new DirectX routines that have not been released generally by MS, using Python - a fairly new programming model for this type of endeavor along with XML, a tempermental gal if I ever saw one ;) I would expect optimization issues. And optimization issues are usually fixable fairly quickly with patches, and by working with the video card manufactureres to help them optimize their drivers for the game.
 
I've got all the settings to High, and I run it at 2048x1536--but the darned fonts are too small and I'd like to hack that part and upsize the fonts. No lag. Here's my system:
A64 3500+ Venice
BFG 6800gt OC
a gig of Corsair XMSPC3200D2pt
10000rpm Raptor SATA

Now I've gotta learn how to play the darned thing. I'm at 1600bc on my first game, and cruising these forums looking for an education. And of course getting that education: great forums.

Truth is, I'm a huge fan of Civ3, and struggling with the graphics here, particularly the camera and its movement. Don't like it. But I'm going to adjust.
 
oldStatesman said:
I ran a perfmon for and hour and 1/2 and can pretty much verify the OP's conclusions.

Civ4 uses a LOT of resources. It reserves a lot of page memory space for itself...however this is really not that big of an issue as XP handles the management pretty well.

The biggest bottleneck is CPU utilization. Perfmon verifies that the Civ4.exe averaged 94.5% CPU utilization over the coarse of the test.

The graphic card counters are pretty consistent too; civ4 is not putting any excess on the graphics hardware.

What did memory usage cap out at?
 
I_batman said:
What did memory usage cap out at?
Total memory usage peaked at around 30% usage over the coarse of the test. Civ used most of this. 1GB total sysytem RAM with a possible virtual memory size of up to 3GB. (Page file is on it's own 3.5GB partition. WindowsXP set to automatically allocate as needed - 1.5GB minimum.)

Attached are screenies of the system mempry averages and the Civ4 process counter averages during the test.
 

Attachments

  • civ4 counters.jpg
    civ4 counters.jpg
    61.1 KB · Views: 160
  • civ4 counters memory.jpg
    civ4 counters memory.jpg
    68.5 KB · Views: 149
CrONoS_QC said:
So do you think the games can be optimised?
Absolutely...sooner or later. The extent depends on exactly what needs to be done, and how much $$$ Take2 is willing to spend doing it.
 
oldStatesman said:
Total memory usage peaked at around 30% usage over the coarse of the test. Civ used most of this. 1GB total sysytem RAM with a possible virtual memory size of up to 3GB. (Page file is on it's own 3.5GB partition. WindowsXP set to automatically allocate as needed - 1.5GB minimum.)

Attached are screenies of the system mempry averages and the Civ4 process counter averages during the test.

Interesting.
So Civ IV and the OS running together use up 300 MB, or are you saying that Civ IV used up 300 MB by itself?

Either way, it sounds like 2 Gig Mem is overkill, and Civ IV is processor dependent, which is not good.
That is how Civ III is set up, and that was a slow game in large scale setups.
 
I_batman said:
Interesting.
So Civ IV and the OS running together use up 300 MB, or are you saying that Civ IV used up 300 MB by itself?

Either way, it sounds like 2 Gig Mem is overkill, and Civ IV is processor dependent, which is not good.
That is how Civ III is set up, and that was a slow game in large scale setups.
Civ used ~300 MB itself, it never grabbed all the available free memory, and seemed to max itself out at just below 1/3rd of the total memory available. I believe total memory with the OS and other apps I have running would peak at about double that... but overall memory usage was not excessive at all. Never went over 75% total for everything running. Well within acceptable parameters. (My guess is that with 2GB it would use it proportionaly - so 2GB may not be overkill...i.e I really can't say for sure if the 300MB limit was a % limit or a MB limit....don't have another system availble for testing and I really don't feel like cracking the case and pulling memory to find out.)

...and it does seem that the processor is a bottleneck more than the memory...some great threads around, especially in the Bug and Tech support forums discussing this...hopefully it is an optimization issue that will be solved with the first patch or two.
 
oldStatesman said:
Civ used ~300 MB itself, it never grabbed all the available free memory, and seemed to max itself out at just below 1/3rd of the total memory available. I believe total memory with the OS and other apps I have running would peak at about double that... but overall memory usage was not excessive at all. Never went over 75% total for everything running. Well within acceptable parameters. (My guess is that with 2GB it would use it proportionaly - so 2GB may not be overkill...i.e I really can't say for sure if the 300MB limit was a % limit or a MB limit....don't have another system availble for testing and I really don't feel like cracking the case and pulling memory to find out.)

...and it does seem that the processor is a bottleneck more than the memory...some great threads around, especially in the Bug and Tech support forums discussing this...hopefully it is an optimization issue that will be solved with the first patch or two.

Thanks for the info. I will check the bugs forum.
 
Processor is a bottleneck in many cases, but it seems to me that the excessive swapping is also causing a lot of stutter. I have 1GB of memory and the entire time I'm playing I can hear it using the hard drive. Seriously, almost the entire time my hd is crunching. Whether it's using up its physical memory or what, I don't know, but the hd read is really what's causing a lot of the skipping (for me at least) I think.
 
Hm, just to have it mentioned here: I installed that "Blue Marble" mod that changes terrain to be more realistical and - lo and behold! - for the very first time my comp (2 GHz) was able to smoothly scroll even on a huge terra map and in world view (and with graphics set to "high", whereas with the regular graphics it went sluggish even on "low")... wow! Other users have mentioned a performance boost, as well. I still have to verify that, though, by playing a whole game with that mod, but nonetheless, I haven't seen CIV4 as crisp and quick in reaction to every click before.
 
I haven't noticed a performance increase with the Blue Marble mod myself, I just quit an intolerable game (epic terra). I have 3.0 GHz Pentium and 512 Mb RAM.

On a somewhat related note, how do you "clear your cache" and does it improve performance on crowded maps?
 
Penitent said:
On a somewhat related note, how do you "clear your cache" and does it improve performance on crowded maps?

Delete the directory cache from

C:\Documents and Settings\Administrator\Application Data\My Games\Civilization IV

Good luck!
 
So, basically as long as you have a bare-minimum vid card, the game speed isn't affected by it? I'm running an Athlon64 2800+ mobile, with only 384MB of ram (128 for shared video). You think that adding a 1GB stick (replace a 256) will increase my performance more than if I'd bought a laptop with a dedicated video card?

Really, civ4 is the only game I play as it is. Excepting civ3, that is... and colonization.

Maybe civ needs some sort of in-game FPS counter these days :crazyeye:
 
Back
Top Bottom