modeonoff :
Thanks for your reply but I don't know about memory enough to understand it. I want to have 16GB or 32GB initially and perhaps upgrade to 64GB or more later on. Based on your reply, it seems that if I want to start with a total of 16GB, buy 4x4GB. If I want to start with a total of 32GB, buy 4x8GB. Then, there are four remaining empty slots for additional RAM later on. Am I right?
What products do you recommend if I want to build a high end system with Threadripper?
As far as I recall, Apple recommended filling in all memory slots with the same amount of RAM.
Your upgrade possibility make it harder.
Depending on whatever the RAM is non-ECC or ECC each rank is 64 or 72 bit, since the CPU have four channels and likely 8 memory slots if you just use four memory modules of single rank ram you just have one rank / channel, if you instead use dual rank modules you'd have two / channel, if you used 8 single-rank modules you'd also have two / channel, if you used 8 dual-rank modules you'd have four, if it supported quad-rank modules and that was something you'd get four of you'd still have four / channel and if you got eight of those you'd have eight / channel.
You can read about memory ranks here:
forums.crucial.com/t5/Crucial-memory-for-PC-systems/What-is-a-memory-Rank/ta-p/126346
AMD have their own memory guide for gaming:
https://community.amd.com/community/gaming/blog/2017/07/14/memory-oc-showdown-frequency-vs-memory-timings
AMD specific:
1) If the RAM can run at command rate 1T then GDM / Gear Down is likely better off. Otherwise on.
2) BGS happened to be better on with game, off with benchmark.
Memory:
3) Dual rank AT SAME CLOCK SPEED AND LATENCY is faster, because the second rank can perform work while the first one refreshes, however running more ranks is harder for the memory controller and as I've seen on AMD pages before what I really wanted to show is that with more memory modules or dual rank you're less likely to hit the higher frequencies. And hitting the higher frequency is likely better than having dual rank.
4) Optimized timings is better than auto.. Duh..
5) In their case the best stable timings (low cas latency * memory period) won over the best stable frequency (with loser timings.)
Here you can find the post about number of memory modules and ranks and what speeds are supported:
https://www.anandtech.com/show/11244/the-amd-ryzen-5-1600x-vs-core-i5-review-twelve-threads-vs-four
2 DIMM single-rank: 2666 MHz.
2 DIMM dual-rank: 2400 MHz.
4 DIMM single-rank: 2133 MHz.
4 DIMM dual-rank: 1866 MHz.
So as you can see for memory frequency using as few modules with only single-rank is best. And if you got the choice of using fewer memory modules but dual-rank memory to reach the capacity you want vs using more memory modules of single-rank then using fewer memory modules of dual-rank is better. The more stuff you put on the memory controller = the worse.
So the optimal configuration with 16 GB of ram is to use four 4 GB SR modules to put one rank / controller, preferably as fast as is supported too (where according to the test AMD did for Ryzen timings matter more than clock frequency but you shouldn't then just look at the CL value since that's _CLOCK PERIODS_ not nano seconds, to get the actual time you have to multiply that with 1/frequency (period), I would just do 18/3466 = 0.0051933064, 16/3200 = 0.005, so the 3200 MHz CL16 would have just a tiny bit better timing than the 3466 MHz CL18, but they are of course much closer than what CL16 and CL18 alone suggest.
I'd suggest to not use 8 memory modules and even less so 8 dual-rank memory modules if you don't have too.
Now the problem with your question become that since you want 16 GB now and maybe 32 GB later if you use four modules now you get the best performance now because you get quad-channel support and just one rank per channel, however if you then add four more modules to get 32 GB rather than get a new kit of four sticks you suddenly load each channel with two modules likely making it harder for it to run at the same performance.
On the other hand if you just get two 8 GB modules now you'll just get dual-channel which will give you less bandwidth than what quad-channel would give you, though when you later add two more 8 GB modules you'll still just have four modules giving you the best performance then!
Here's someone testing quad vs dual channel:
https://forum-en.msi.com/index.php?topic=291116.0
He say blue is dual and red is quad but if you look at the charts the number for the runs are switched over in the memory chart plus he say his dual-system performed worse so the colors doesn't match up with what he claimed there and the outcome is that the memory benchmark ran better with quad-channel memory and the CPU benchmark did too!
So you should try to get quad-channel.
As such in the end I guess my recommendation (for performance really..) would be to well, preferably get 4 x 8 GB SR sticks right now if that was an option though RAM are expensive now or get 4 x 4 GB SR sticks now and later when you want to upgrade sell that kit and get 4 x 8 GB SR then, if you don't want to sell any and buy something new I assume getting 4 x 4 GB SR now and upgrade to 8 x 4 GB SR later may be the better alternative, that way you always use quad-channel but may lose a bit of frequency after the upgrade. Going 2 x 4 GB SR now and upgrade to 4 x 8 GB SR later would mean you'd have to use dual-channel now which would lower your performance.
He had a 16 core chip, with 8 core maybe it will matter less because less cores may need less memory bandwidth.
2 = single-channel = very slow.
1 = dual-channel = still slower than necessary.
4 = quad-channel with 2 modules / slot = you may drop some frequency here (also in case of 8 x 2 GB you have no room to upgrade!)
3 = quad-channel with 1 module / slot = the best configuration.
For upgradability 3 will become 4 and 1 will become 3 when you upgrade if you add more modules =P