Can someone explain how RAM limits CPU speeds?

RedScare

Member
May 15, 2004
86
0
0
Ok so I am more or less a noob about computers. i have decided to upgrade my cpu and motherboard. but, i would like to keep the RAM that i currently have because i dont really think that i would notice any difference in speed by upgrading it. however, by reading through many posts, i guess the speed of the RAM is related to CPU performance. i feel like an idiot for asking this but i cant figure out how the two are related.

my current setup:
1.2 thunderbird athlon
768MB DDR 266 Crucial RAM (PC2100) 1x256, 1x512
120GB Maxtor
Radeon 9600Pro
Some crappy mobo - 4x AGP

Question:
if i upgrade my cpu and motherboard, will i be able to keep my RAM? i would like to get an AMD Athlon cpu and am thinking about the NF7-S or the Infinity Ultra mobo. what specifically should i be looking for in a mobo/cpu? how will my RAM affect cpu speed/overclockability?

i really appreciate any input here. and i know this is an easy one but for some reason i cant seem to figure it out. thanks in advance.

oh. P.S. the reason i am upgrading is because i would like better performance in gaming. im not a hardcore gamer, but i would like to be able to play ut2k4 and hl2. currently ut2k4 is unplayable for me even on the lowest settings.
 

Gregory1566

Junior Member
Apr 30, 2004
2
0
0
Okay to start off with you could keep your memory with just about any board that supports drr memory, which you have. The difference in memory will make a difference because the memory speed is how fast the information can get to the proocessor, the slower the memory the more the cpu just waits clock cycles to do anything. So upgrade your memory if that is possible.
 

RedScare

Member
May 15, 2004
86
0
0
so how will my overall performance be affected? lets say for example i decide to get a mobile 2600+. ok, i keep my DDR 266 RAM. how will the total speed compare to if i upgraded my RAM to DDR 333 or 400? and how will my pc2100 ram affect overclocking capabilities?
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
you should have more than plenty of memory bandwidth in dual channel mode :)
look for that feature and it will breathe new life into your older pc2100 memory and (asuming you have two "matching" sticks) will provide more than enough bandwidth for the cpu and other components.
mem ratios are your friend.

if you want exact numbers on performance differences between different memories then i suggest checking out a few reviews or something.
but generally speaking the memory got you this far and can take you another year or two with current platforms (only taking a marginal hit in performance of maybe 5-10% when compared to faster memory like pc3500 or something because dual channel mode allows for good things, assuming latencies and system frequencies are the same in the comparison) or even just a new athlon XP in yur current motherboard (if it is supported)

i also notice the two sticks of memory you have aren't the same size which might cause problems in a dual channel motherboard.

you'll find fsb speed to be far more important. when running in dual channel mode especially. there was a guy here in an earlier post who is running a P4 a good bit over 3ghz while using only pc2100
 

RedScare

Member
May 15, 2004
86
0
0
can you explain how fsb relates to memory speed? i realize this is very trivial basic info about how stuff works but i cant seem to find a good, simple explanation. maybe im not looking in the right places...
 

myocardia

Diamond Member
Jun 21, 2003
9,291
30
91
If you don't run an XP with a 1:1 memory-to-cpu fsb, it completely kills performance. And a simple explanation of what Soulkeeper said would be if the ram and the cpu aren't both running at exactly the same speed, then the cpu is wasting alot of time, because it's having to wait for the ram to send it data. That doesn't apply to the P4's, and the Athlon64's aren't hindered much, but with an XP it's pretty much useless to run them out of sync with the memory.
 

RedScare

Member
May 15, 2004
86
0
0
ok so i would have to get a mobo capable of running a 266fsb then? i would have to set the fsb at 266...wouldnt that lower the total operating speed of the cpu?
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
alright this is the deal: You get two sticks of identical ddr memory and a dual channel motherboard then you can run the memory and fsb at whatever speed you feel like
 

RedScare

Member
May 15, 2004
86
0
0
well i guess my goal is to build a new computer, but ill use the hard drive, RAM, vid card, optical drives and sound card i have in my current system. so the only thing i am looking to buy is the case, PSU, mobo, and processor.

so what kind of problems will i encounter if i have two sticks of memory that are not identical in size?
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
i don't think you will be able to run dual channel mode correctly

check out http://newegg.com
they have a pretty cool selection and most people around here usually buy from them or a select few good places. pricewatch.com might also come in handy, be carefull there are a lot of companies and some are evil.
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
if you have just the two sticks but they aren't identical then you will end up having half the total system memory bandwidth in the Nforce 2 ultra 400 and the i875 along with a few other chipsets. This coupled with the fact that the memory will be slower than the pc3200 (the industry accepted high end ddr1 memory standard right now hehe) will make the memory your bottleneck when bandwidth requirements are high (like gaming and stuff)

You can buy single channel motherboard solutions which will support the latest processors but you will prob be delt a good hit from the memory situation when comparing to what's out there today.
kt600 is the budget board for the athlon socket A system, they can be had for like 80 bucks and are only single channel but have 3 memory slots
nf2 400 is a older non ultra version of the "nf2 ultra 400" and thus doesn't have dual channel mem. the nf2 is a great product i suggest getting an abit board if you wanna ever mess with things or overclock or something :).
 

jaysonstuart

Junior Member
May 8, 2004
12
0
0
jesus, by reading this am i hindering my system by having (2) 256 ddr 2100 chips and (1) 512 ddr 2100 chip? Because if I try to go past 333 fsb my shi t won't boot.
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
Originally posted by: jaysonstuart
jesus, by reading this am i hindering my system by having (2) 256 ddr 2100 chips and (1) 512 ddr 2100 chip? Because if I try to go past 333 fsb my shi t won't boot.

that is probably the case because when all 3 memory slots are filled on many boards (especially the cheepo company ones) they become unstable or limited to a certain speed

yeah i think both kt600 and nf2 ultra 400 have a 3 slots full hafta drop the mem to 333
some people can get the system stable with vdimm or latency adjustments, but usually not

regardless tho 333 with 266 mem is pretty good tho especially if you get the fsb to 400 or higher and have clock mult controll and access to mem/fsb ratios with the mobile bartons you can't lose :)
 

RedScare

Member
May 15, 2004
86
0
0
ok so basically i should just ditch my 256 stick and spring for another 512 stick of pc2100 and i can run the bus at whatever speed i want?
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
or you could pick up another cheap 256 or 512mb pc2100 stick and get a really good motherboard that will run your 3 sticks of memory without a hitch in dual channel mode (assuming you find a "matching" module)
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,732
155
106
dang i need some sleep, anyways welcome to the forums guys and good luck with all yur problems :)
 

RedScare

Member
May 15, 2004
86
0
0
well i am still thoroughly confused. if someone would just explain (quantitatively) how this stuff works i wouldnt have to ask so many annoying questions...maybe i can figure it out in the morning when im not so tired.
 

myocardia

Diamond Member
Jun 21, 2003
9,291
30
91
Originally posted by: jaysonstuart
jesus, by reading this am i hindering my system by having (2) 256 ddr 2100 chips and (1) 512 ddr 2100 chip? Because if I try to go past 333 fsb my shi t won't boot.
No, that's just because your ram is rated to run at 133 mhz, not 166 mhz. You just need to buy new ram. Gaming on computers is expensive now, as it has been since it was invented, unfortunately.
 

Sahakiel

Golden Member
Oct 19, 2001
1,746
0
86
Originally posted by: redscare05
well i am still thoroughly confused. if someone would just explain (quantitatively) how this stuff works i wouldnt have to ask so many annoying questions...maybe i can figure it out in the morning when im not so tired.

CPU interfaces with memory controller using what is called the front side bus. Back side bus can be ignored for this discussion.
The memory controller interfaces with the memory itself using the memory bus.

In regards to memory, only one factor determines CPU performance.
Average latency.
This is how long it takes for the CPU to get its requested data. The CPU sends a request to cache, the cache finds nothing and sends a request onto the FSB, the memory controller picks up the request, the memory controller looks up the data in memory, the memory sends the requested data to the memory controller, the memory controller sends the data to the cache controller, the cache controller sends the data to the CPU, and the CPU becomes happy and starts working again.
The faster the CPU gets the data it wants, the better your CPU performance will be. Every piece of data will take hundreds of clock cycles to fetch during which your CPU will try to work on other stuff. It doesn't always find more work and in the end, a CPU will always stall at one point or another.

Secondary factors determine average latency.
1. FSB speed.
This is how fast the FSB runs. The faster it runs, the less time your CPU waits for data sent from the memory controller.
(skip over bus details here)
Distilled version: Within the same bus architecture, faster clock is always better.
2. Memory speed.
This is how fast the memory runs as measured in clock speed.
(skip over details here)
Distilled version: Faster clock is always better.
3. Memory bus speed.
This is how fast the memory bus runs as measured in clock speed.
Faster is usually better. However, it gets complicated since #4 is usually dependent on this setting.
4. Memory latency.
This is how long the memory takes to respond to a request from the memory controller.
What's really annoying is that latency is set using the memory bus clock as a reference. Lower memory latency is always better, but since you're using an external reference clock, whatever combination of settings gives you the lowest memory latency in nanoseconds is probably for the best.
Distilled version: Lower is usually better.
5. Memory bus data width.
This is how much memory is sent every clock cycle. The wider the data width, the more data gets shoved down the pipe every clock tick. Reason is spatial locality in programs.
(skip over details here)
Distilled version: Wider is better.
6. Other.
This includes interleaving, caches, buffering, error-correction, pipelining, etc. Usually fairly insignificant unless you're particularly anal about numbers for some reason. Some factors such as burst length and prefetching can affect overall performance significantly, but I'm lazy.

Combine the above and you've got your explanation (note: stripped down version)
Spatial and temporal locality greatly complicate things, but are hardly noticeable except in extreme cases or terrible configuration settings.
The best scenario for a new AMD CPU would be to synchronize memory speed with the FSB speed. Dual channel for Athlons at half the clock speed will get you the necessary bandwidth numbers, but it requires twice as long to fetch the data you need. Spatial locality and prefetching can hide that latency, but that depends on the application and implementation. Also, there are indications that the caching mechanism required to implement asynchronous memory is actually pretty slow, which means you'll take a performance hit regardless.