RAM Settings fixed my game

Northwind78

Chieftain
Joined
Mar 14, 2006
Messages
3
Hey,

I finally got the game working like a dream, no more crashes, no problems at all.

I changed my DDR400 - down to 333 in the bios, and I just finished a 5 hour game.

Might be worth anyone trying this out.

Northwind78
 
If you have AMD 64 processor and you have installed both banks of double sided DDR-SDRAM, yes, this is a limitation of AMD 64 processor's memory controller. For ASUS motherboard only, if ASUS BIOS Memory is set to AUTO, it will automatically pick DDR-333 even if all memory modules are DDR-400.

However, you CAN run Civ4 with DDR-400 speeds but because you installed both banks of double sided DDR-SDRAM, you must add 1 to tRP (Row Precharge) so tRP should be 4 instead of original 3. If you have 2GB (2x 1GB memory module) per one bank, you must also add 1 to tRCD (Row to Column Delay), I think. They are required configuration to properly access all double-sided memory modules in DDR-400 speed mode.

I have 3GB memory (2x1GB memory module for Bank A and 2x512MB memory module for Bank B) so I must add 1 to tRP and 1 to tRCD to properly configure my memory and make them compatible with AMD 64 memory controller (inside processor). My memory modules are ECC capable so I enabled ECC option to make sure there is virtually no errors. I don't have ANY problems playing Civ 4!!!
 
danielcg said:
However, you CAN run Civ4 with DDR-400 speeds but because you installed both banks of double sided DDR-SDRAM, you must add 1 to tRP (Row Precharge) so tRP should be 4 instead of original 3. If you have 2GB (2x 1GB memory module) per one bank, you must also add 1 to tRCD (Row to Column Delay), I think. They are required configuration to properly access all double-sided memory modules in DDR-400 speed mode.
There is no "required configuration" mandated by AMD. The recommended settings from the module manufacturer are in the SPD and they may have differing recommendations for K8 in their own documentation.

In any case, every setup is individual and even modules from the same lot can provide differing performance in the same MB revision. All this means that all you can offer is tips on what worked for your setup (which are applicable only for exactly the same setup or perhaps somewhat for one with only minor differences), not "required configurations".

My experience is that instead of tweaking the module addressing specific latencies, it's instead more productive to set the "Command Rate" to 2 when using more modules (more banks) in K8 because this is the only setting which actually governs the bank selection latency which is relevant when more banks are in use.
 
Correct. There is no required configuration but early AMD-64 processor have stability problems with DDR-400 memory with all banks and all double sided installed; only workaround is use DDR-333. Refer to ASUS Web Site and click A8V Motherboard and click "FAQ" for more detail(s).

I created my own (different) workaround to allow my FX-53 processor to work with all double sided memory in DDR-400 speeds. This workaround is not required if double sided memory are installed into only ONE bank.
 
danielcg said:
I created my own (different) workaround to allow my FX-53 processor to work with all double sided memory in DDR-400 speeds. This workaround is not required if double sided memory are installed into only ONE bank.
Increasing the minor addressing latencies a bit is indeed a smaller performance loss than reducing the clock with a higher divider or setting CR to 2.

AMD actually recommends CR 2 with many K8 models when more than one bank is populated and some MBs have their BIOSes set with that as default:
AMD TD#31411 Rev 3.03 AMD Functional Data Sheet said:
2T timing option to accommodate loading of unbuffered DIMMs
Also, see Table 45 of AMD TD#26094 Rev. 3.30 BIOS and Kernel Developer's Guide for AMD Athlon™ 64 and AMD Opteron™ Processors
amdcommandrate7fp.png


However, it depends at least as much on what kind of memory (and voltage) you have than the CPU model and revision, whether you need to resort to actually using CR 2. For example, I have Corsair premium modules which I can run below SPD latencies even at CR 1 and a minor OC with just 2.8V, in a same generation (130 nm) core as you have.

Our experiences may still have no direct relevance to Northwind78's setup. We don't know anything about it (even if it's AMD setup to begin with).
 
Hey,
Just so anyone knows, my Civ 4 is still working without any errors or crashes.
I tryed everything for 2 and 1/2 months to get this game to work, and this was the only thing that fixed it.

I only posted it so other people could try it out.

Northwind78
 
Double Sided Memory Module = Double Rank Memory Module.

I have all 4x Double Rank Memory Modules. My BIOS is already set Command Rate to 2T (I set it to AUTO). As specification you supplied, maximum speed would be DDR333, not DDR400. That why I am correct. Therefore, I created my custom workaround to allow all 4X Double Rank Memory Modules to run in DDR400 speeds by add 1 to tRP. If one bank contain 2GB or above (2x 1GB Double Rank Memory Module), I must also add 1 to tRCD.
 
danielcg said:
As specification you supplied, maximum speed would be DDR333, not DDR400. That why I am correct.
Not maximum attainable, but maximum supported by AMD. However, as you can see, in more typical configurations (of 1-2 GB of memory) just changing from CR 1T to 2T brings the setup within AMD specs.

Therefore, I created my custom workaround to allow all 4X Double Rank Memory Modules to run in DDR400 speeds by add 1 to tRP. If one bank contain 2GB or above (2x 1GB Double Rank Memory Module), I must also add 1 to tRCD.
I don't think you can call it a "work around", when you are just overclocking your memory controller. There is no problem, just a feature :D

I'm sure you are "correct" with whatever works for you, but there is probably no generalization which can be drawn from it and most likely none that pertains to Northwind78. In fact, this whole thread doesn't have much general value, because this "fix" is not for CivIV but for a general HW stability problem. Troubleshooting should always check HW issues to begin with. CivIV might reveal memory instability just because it's such a huge memory hog and actually loads those modules close to their capacity. Any proper memory tester will do the same (S&M is my favorite).

It's also possible or even quite likely, that you could be able to run your OC with the SPD latencies by just bumping the voltage up or by using higher quality modules (for example Corsair has ECC modules rated for 2-3-2-6 which might run at 400 MHz at that or a bit higher latencies but still lower than what you have now).
 
can the topic poster please tell me how to do what he did in the original post?

thanks
 
thanks for the tip, i'm definately trying. most of my ctd's where reduced by disabling audio and downgrading nvidia drivers, but still get a lot of ctd's
 
so far worked beautifully. still have to try end-game/large map, but i'm very optimistic :)
 
update: this was THE solution for all my CTDs, BSODs etc problems

i even reverted all the "fixes" i implemented before and i still can play for hours and hours w/o one single problem, no matter what
 
Back
Top Bottom