Jump to content

Increased Memory Latency Expected After Installing Additional Ram?

Go to solution Solved by Pandur,
On 3/18/2022 at 6:00 PM, linuxChips2600 said:

That makes sense @Pandur, but what doesn't make sense is that as you can see from my previous detailed comment comparing the latency as measured with the auto-generated timings with my additional sticks of RAM vs the latency as measured with the timings I'd manually entered to match my original 3200 MHz sub-timings before I installed new RAM, those latencies basically turned out to be the same according to both AIDA and Intel's MLC.  In other words, matching all of the timings and sub-timings to what I had originally had with just 2 sticks of RAM was still not enough to trim the latency back down to what it was before I installed the additional sticks of RAM.  So are you implying that there's some additional timing adjustments going on at the hardware level which can't be changed through the BIOS?

I have been away for the weekend, so I am a bit behind here.

 

Memory timings are per populated side of each stick of ram (one rank). As you add more sticks of ram, or go from single-sided to double-sided sticks, your memory controller will spend more time performing janitorial tasks. So there will usually be a performance penalty, even running identical timings. I say usually, because there are other factors that can increase performance at the same time. But this is the short version, which explain what you see.

I just added an extra 16 GB of ram to my system and now I have 32 gb of ram (I make sure that the memory MHz and timings matched the ones that I currently have), but when I checked the idle memory latency using Intel's memory latency checker tool (mlc) on my memory after I installed the new additional memory it seems that the idle memory latency has gone up by at least 3-4 nanoseconds. Is this to be expected especially as I got a bit unlucky and got hynix dies for the extra 16 GB of ram instead of samsung dies which is what the original 16 GB of ram in my computer has?
 

Link to post
Share on other sites

I'd say it's to be expected, the memory controller has to work harder to deal with twice the memory sticks, maybe more ranks  depending on how the memory chips are arranged on your sticks.

The electrical signals are a tiny bit dirtier due to having twice the sticks amount in such a close proximity, the dc-dc converter powering the ram sticks may output a different quality of energy, because it has to output twice as much power to the memory slots... basically what I'm saying is that not just the amount of memory changes, lots of other things that could affect that latency change.

 

 

 

Link to post
Share on other sites

It’s got nothing to do with the memory controller working harder, you guys need to stop that.

 

What is really going on? The internal sub timing have gotten slacker because you left things on auto. Clear your cmos and take note of your subs with 2 sticks. Clear your cmos and add more. Watch the timings change.

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

16 hours ago, freeagent said:

The internal sub timing have gotten slacker because you left things on auto.

Yes, you're right that the internal sub-timings have gotten slacker, as I happened to have a screenshot of my original 3200 MHz XMP sub-timings before I installed additional memory into the system (along with the latency as measured by mlc):
Original Sub-Timings and Intel MLC Latency
and those sub-timings listed above are indeed tighter than the sub-timings which were auto-generated after I installed my additional sticks of RAM (latency as measured by mlc is also included in photo):
Updated Auto Sub-Timings and Intel MLC Latency
So natually ofc I tested whether or not tightening those sub-timings to reflect the "original sub-timings" would make a difference in the latency as measured by mlc...
Updated Manual Sub-Timings and Intel MLC Latency

Unfortunately as you can see from above, even though now the timings are an exact match of the timings I had before installing the additional sticks of RAM, even with an extra 66 Mhz overclock over "stock" XMP frequency my latency had actually increased by ~0.4 nanoseconds (it's probably within margin of error though however).

Since all of the above testing was done in Linux, I tried switching over to my Windows install and used AIDA64 to test the memory latency instead to see if that would make a difference...
So here's before tightening sub-timings to reflect original:
Updated Auto Sub-Timings and AIDA64 Latency

And here's after tightening the sub-timings:
Updated Manual Sub-Timings and AIDA64 Latency

As you can see there was indeed an improvement, albeit by a very slim margin of ~0.5 nanoseconds, so I'd say that this is within margin of error as well.

In conclusion @freeagent, unless if you can identify a mistake I made in my testing process or if you can give me additional advice as to what other factors could be involved in the small increase in latency I've observed using mlc going from 2 to 4 sticks of RAM in my system (maybe I shouldn't be overclocking my RAM by 66 MHz?), I think I will have to give it to @mariushmon this one and say that probably the extra load being put on the memory controller on the CPU is at least one of the factors contributing to the mlc-measured latency increase that I've observed.
 

Link to post
Share on other sites

Sorry bud, I’m not running Intel, so I am useless at this point. I can only speak from experience, and I lack that with modern Intel.

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

RAM is not maintenance free while your computer is running. Stored data need to be refreshed so it does not fade and more. Having more ranks of memory will cause more background maintenance that have to be done by the memory subsystem. So it is not wrong to say that the memory controllers are working harder.

Link to post
Share on other sites

30 minutes ago, Pandur said:

Having more ranks of memory will cause more background maintenance that have to be done by the memory subsystem

I am intrigued, please explain more 🙂

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

13 minutes ago, freeagent said:

I am intrigued, please explain more 🙂

Short version is that every bit stored in RAM have to be refreshed, or it will fade. And you don't want your 1's becoming 0's unless told so. This process is not instant. So there is a tiny bit of overhead involved.

 

Some of the timings we change while tuning ram are the refresh timings. You will gain performance by extending the interval between refresh cycles. Go to far and you get data loss shown as errors in memtest f.ex.

Link to post
Share on other sites

5 hours ago, freeagent said:

Sorry bud, I’m not running Intel, so I am useless at this point. I can only speak from experience, and I lack that with modern Intel.

Sorry for the confusion @freeagent, but I never said that I am running Intel either; the system's a 5600x with a b450 chipset.  I simply used Intel's memory latency checker tool to get a memory latency reading from my system (more specifically whatever the "idle" memory latency is).  Now to be fair if you meant (as well?) that you have never had experience with software directly made by Intel then that's understandable, as there's usually no need for one to install software onto one's computer from a "competing CPU maker" unless (as it is in my case, especially as I'm running Ubuntu Linux) if one simply cannot find reputable software for a particular purpose from any other source.

4 hours ago, Pandur said:

Some of the timings we change while tuning ram are the refresh timings. You will gain performance by extending the interval between refresh cycles.

That makes sense @Pandur, but what doesn't make sense is that as you can see from my previous detailed comment comparing the latency as measured with the auto-generated timings with my additional sticks of RAM vs the latency as measured with the timings I'd manually entered to match my original 3200 MHz sub-timings before I installed new RAM, those latencies basically turned out to be the same according to both AIDA and Intel's MLC.  In other words, matching all of the timings and sub-timings to what I had originally had with just 2 sticks of RAM was still not enough to trim the latency back down to what it was before I installed the additional sticks of RAM.  So are you implying that there's some additional timing adjustments going on at the hardware level which can't be changed through the BIOS?

Link to post
Share on other sites

23 minutes ago, linuxChips2600 said:

Sorry for the confusion @freeagent, but I never said that I am running Intel either; the system's a 5600x with a b450 chipset.  I simply used Intel's memory latency checker tool to get a memory latency reading from my system (more specifically whatever the "idle" memory latency is).  Now to be fair if you meant (as well?) that you have never had experience with software directly made by Intel then that's understandable, as there's usually no need for one to install software onto one's computer from a "competing CPU maker" unless (as it is in my case, especially as I'm running Ubuntu Linux) if one simply cannot find reputable software for a particular purpose from any other source.

Oh sorry, I must have gotten confused with another thread.. whoops sorry, the aging process must be taking hold 😞

 

I have never run that program before, for latency I just use aida64, while my old key still works. 

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

5 hours ago, freeagent said:

for latency I just use aida64

I did use AIDA in my Windows install (unfortunately I am not aware of an AIDA64 for Linux) and like I've said the latency barely changed even after tightening the sub-timings to the original ones before I installed the additional RAM, so yea unless if @Pandur or @mariushm has some additional insight into the matter I am clueless as to why the memory latency has increased going from 2 to 4 sticks of RAM even after having "restored" the sub-timings to its previous state...

Link to post
Share on other sites

The subs for 2 sticks are for two sticks, if latency has gone up, then its probably not stable at your settings. What have you done to test this?

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

23 minutes ago, freeagent said:

The subs for 2 sticks are for two sticks, if latency has gone up, then its probably not stable at your settings. What have you done to test this?

I didn't test the stability per se of the tightened sub-timings, especially after seeing that it barely affected the memory latency when I tightened the subs back to their "original" values before I'd installed the two extra sticks of RAM.  As I've said before, after tightening the timings, according to intel's mlc I gained 0.4 nanoseconds of latency but according to AIDA64 latency decreased by 0.5 nanoseconds, so given how the results differ by so little between the two different latency measurements I simply chalked it up to margin of error.

However, I did run some CSGO benchmarks just to see if this latency increase going from 2 to 4 sticks of RAM has caused any performance degradation, and believe it or not, since apparently running 4 single rank modules in dual channel (my current setup now) is "performance-wise almost equivalent" to running 2 dual rank modules in dual channel, my average fps in CSGO is now anywhere from 6% to 9% higher than it was before when I just had 2 single rank 8 GB modules (even with those 2 modules overclocked to 3400 MHz CL17). So I suppose I'm really stressing out over nothing then, or are there still workloads that will be adversely affected by an extra 3-4 nanoseconds of latency?

Link to post
Share on other sites

I am running 4x8 as well, it is nice.  Wish I could help you on your tuning adventures, unfortunately I have no experience with a modern Intel setup yet. I know there are guys here that do know how to tune that platform, hopefully they see this thread. You wont ever notice that extra latency unless you stare at benchmarks all the time..

 

I like using TM5 (with the Anta777 Absolute, or Extreme profile. I have been using Absolute more lately. I also like Linpack Xtreme, I select option 5, the 10GB load. And then some other things..

 

I wouldn't sweat it too much, just go for stability.

AMD R9 9900X | Thermalright FW Pro Black, 3x TL-B12E | Asus Strix X670E -F | 64GB G.Skill 6000C26
Zotac 4070 Ti Trinity OC | WD SN850, SN850X, 2x SN770 | Seasonic Vertex GX-1000 | ProArt PA602
Adcom GFP-345, Adcom GFA-555, S.M.S.L D1+PS100, Cerwin-Vega! CLSC-15, Monster HDP-1800
Link to post
Share on other sites

26 minutes ago, freeagent said:

unfortunately I have no experience with a modern Intel setup yet. I know there are guys here that do know how to tune that platform, hopefully they see this thread

Yea it's certainly a bit tricky when I'm using Intel-made software to test a Ryzen platform lol; hopefully those guys which you speak of also better understand how the memory latency checker software works so that they may advise me on why as to my memory latency increased going from 2 to 4 sticks of RAM despite any and all attempts to bring back down that latency by modifying the sub-timings.

32 minutes ago, freeagent said:

You wont ever notice that extra latency unless you stare at benchmarks all the time..

I figured just as much; just that I am more curious than anything else as to why the latency increase occurred and if there's anything that can be easily done about it without having to revert back to my 2x8 GB setup.

36 minutes ago, freeagent said:

I like using TM5 (with the Anta777 Absolute, or Extreme profile. I have been using Absolute more lately. I also like Linpack Xtreme, I select option 5, the 10GB load. And then some other things..

I used 3 passes of memtest86 (~50 min per pass) and 35 minutes of prime95 Large FFTs to do my stability testing when I first plugged in my additional RAM sticks and dialed in my 3266 MHz overclock (mind you it's only a +66 MHz overclock but it was the most I could manage without running into errors during memtest86).

Link to post
Share on other sites

On 3/18/2022 at 6:00 PM, linuxChips2600 said:

That makes sense @Pandur, but what doesn't make sense is that as you can see from my previous detailed comment comparing the latency as measured with the auto-generated timings with my additional sticks of RAM vs the latency as measured with the timings I'd manually entered to match my original 3200 MHz sub-timings before I installed new RAM, those latencies basically turned out to be the same according to both AIDA and Intel's MLC.  In other words, matching all of the timings and sub-timings to what I had originally had with just 2 sticks of RAM was still not enough to trim the latency back down to what it was before I installed the additional sticks of RAM.  So are you implying that there's some additional timing adjustments going on at the hardware level which can't be changed through the BIOS?

I have been away for the weekend, so I am a bit behind here.

 

Memory timings are per populated side of each stick of ram (one rank). As you add more sticks of ram, or go from single-sided to double-sided sticks, your memory controller will spend more time performing janitorial tasks. So there will usually be a performance penalty, even running identical timings. I say usually, because there are other factors that can increase performance at the same time. But this is the short version, which explain what you see.

Link to post
Share on other sites

Thank you so much @Pandur, @freeagent, and @mariushm for helping me better understand what's going on with my memory latency. Since I feel like now that there has been enough info provided within this thread to form a good explanation of what I've been observing with the memory latency increase, I'll mark this thread as solved.  I wish I could mark multiple people's answers as the solution, but unfortunately the forum doesn't allow me to do so, and marking this very post as the solution doesn't make sense either as I wasn't the one who solved my own issue.  Therefore, since @Pandur's last post was the latest post which helped to tie together all of the info provided thus far in the thread (e.g. info about timings, sub-timings, how much work the IMC performs, etc.), I'll be marking his answer as the solution and I hope the rest of y'all don't mind my decision.

Again, thank y'all very much for the help and take care 😀.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×