P4s and DDR RAM

athlonxp2000

Member
Feb 9, 2003
64
0
0
hi everyone,

can someone answer me these questions.

1) if i'm using a P4 533FSB chip, single channel DDR and i'm using DDR400 RAM, does that mean i'm using 400 out of the possible 533 FSB?

2) also, if i'm using the same P4 533FSB chip, dual channel DDR, and i'm using DDR400 RAM, am i'm supplying an excess of 266 (800 - 533) FSB that will not be used?

3) and lastly, is dual channel DDR much better in performance than single channel DDR?

thanks a lot for the help.
 

MikeMike

Lifer
Feb 6, 2000
45,885
66
91
no, no, yes

in P4's, the FSB and memory speed our not completely related. the 533 is derived from a quadpumped 133mhz FSB (133x4)

and ddr 400 is dual data rate or 200x2 so you will not be using up all of the speed unless you o/c or use a different ratio

dual channel is just faster because it can handle more and you still will not have "extra bandwidth"

im sure sumone with more knowledge than me will help

and try the FAQ's linked below in my sig for some nice answers to questions like this
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
1) Short answer: yes. Long: It means the memory is providing 400MHz worth of bandwidth while the processor wants 533MHz worth. In the case of DDR SDRAM, the FSB and memory busses are the same width, 8 bytes (64 bits) so the frequencies can be compared equally. DDR400 is 3.2GBps (perfect for a 400MHz bus processor), while the 533MHz bus allows 4.2GBps. RDRAM is different because RDRAM is only 2 bytes wide, so 800MHz RDRAM in a single channel only provides 1.6GBps, while dual-channel provides 3.2GBps, which is perfectly matched to the 400MHz P4 bus. 1066MHz RDRAM is needed in dual-channel to match a 533MHz bus processor; with DDR, only dual-channel 266MHz memory is needed to match it.

2) Short answer: yes, you're supplying more than the CPU needs. Long: You only need 266MHz dual-channel for a P4 533MHz bus. Excess bandwidth goes to waste so paying extra for faster memory is mostly throwing it away, except for the opportunity to continue using it if you upgrade the processor and motherboard to an 800MHz bus. However onboard video uses main memory to store textures, so the excess bandwidth can increase performance in that case. Intel chipsets limit dual-channel speeds however, so you can only operate the memory at 266MHz when in dual-channel mode (or 200MHz if you used a 400MHz bus processor), and up to 333MHz if you uses single-channel mode. So even sticking 400MHz modules in, the board will only run them at the speed to match the processor bus. This is actually good, since an asynchronous operation results in latency penalties that don't happen when both busses are running at the same speed.

3) Easy, yes. In a P4 board. The P4 needs the bandwidth, and a single channel of memory, whether DDR or RDRAM, is not enough to supply it. In an Athlon system, it doesn't help as much because the Athlon bus can be matched by a single channel of memory.
 

athlonxp2000

Member
Feb 9, 2003
64
0
0
thanks for the replies. they were very helpful!

1) Short answer: yes. Long: It means the memory is providing 400MHz worth of bandwidth while the processor wants 533MHz worth. In the case of DDR SDRAM, the FSB and memory busses are the same width, 8 bytes (64 bits) so the frequencies can be compared equally. DDR400 is 3.2GBps (perfect for a 400MHz bus processor), while the 533MHz bus allows 4.2GBps. RDRAM is different because RDRAM is only 2 bytes wide, so 800MHz RDRAM in a single channel only provides 1.6GBps, while dual-channel provides 3.2GBps, which is perfectly matched to the 400MHz P4 bus. 1066MHz RDRAM is needed in dual-channel to match a 533MHz bus processor; with DDR, only dual-channel 266MHz memory is needed to match it.

if this is the case, then why do most ppl only use DDR333 for a single channel ddr setup for the P4?? why not use DDR400 since this allows more of the FSB to be used??

also, i thought RDRAM is faster than DDR... at least it costs more. how come you need dual channel RDRAM to match a single channel DDR?

2) Short answer: yes, you're supplying more than the CPU needs. Long: You only need 266MHz dual-channel for a P4 533MHz bus. Excess bandwidth goes to waste so paying extra for faster memory is mostly throwing it away, except for the opportunity to continue using it if you upgrade the processor and motherboard to an 800MHz bus. However onboard video uses main memory to store textures, so the excess bandwidth can increase performance in that case. Intel chipsets limit dual-channel speeds however, so you can only operate the memory at 266MHz when in dual-channel mode (or 200MHz if you used a 400MHz bus processor), and up to 333MHz if you uses single-channel mode. So even sticking 400MHz modules in, the board will only run them at the speed to match the processor bus. This is actually good, since an asynchronous operation results in latency penalties that don't happen when both busses are running at the same speed.

so running ram aynchronously from cpu fsb is bad. but isn't that what you're basically doing when you use the cpu/mem ratios??
e.g. i have a 133 FSB p4... and i have DDR400 (200fsb). i run at at a 4:6 (133:200) ratio so i can use up all the ram. isn't this considered using it asynchronously? ie. isn't using ANY ram that is NOT DDR266 (matching a 133 cpu) running it asynchronously? so should we only use DDR266 for all 133FSB chips?

thanks again all and any help!
 

Lord Evermore

Diamond Member
Oct 10, 1999
9,558
0
76
if this is the case, then why do most ppl only use DDR333 for a single channel ddr setup for the P4?? why not use DDR400 since this allows more of the FSB to be used??

Intel's first non-RDRAM P4 chipset only allowed PC133 memory (i845), which was horrible performance (less than half the bandwidth of a 400MHz frontside bus). Subsequent chipsets allowed single-channel DDR, but only up to 266MHz bus speeds. The newer single-channel chipsets like 845PE, allow up to 333MHz memory speeds. However they don't officially support DDR400. Intel's chipsets are also designed so that operation at anything other than the speeds Intel wants are NOT possible, no matter what the motherboard manufacturer does for overclocking. So if you have a 533MHz bus processor, the 845PE is able to use 266MHz or 333MHz memory, but can't be set to use 400MHz memory. If you increase the processor bus speed, it increases the memory bus speed at the same rate, but the processor bus will always be higher than the memory speed. That's why it was such a good thing when 845PE came out, because it was a huge performance boost since it allowed 333MHz memory with a 533MHz processor. That's also why people wanted dual-channel for the P4 so much.

also, i thought RDRAM is faster than DDR... at least it costs more. how come you need dual channel RDRAM to match a single channel DDR?

RDRAM is a serial bus, while DDR is a parallel bus. RDRAM is 16 bits wide, SDRAM is 64bits wide. All current x86 processors have a 64bit frontside bus. RDRAM's serial bus allows it to reach much higher frequencies than SDRAM (PC800 runs at a 400MHz clock and is double data rate). Luckily, current processors are not coupled to the memory bus as they were in older systems (Pentium required 2 modules of 32-bit wide fast-page memory because it had a 64-bit memory/chipset bus).

So, in current chipsets, the memory bus does not have to be as wide as the processor bus, but best performance is had when the memory can supply the same amount of data throughput as the processor bus. SDRAM's 64bit bus means that equal frequencies between it and the processor bus have equal bandwidth. A P4's bus is quad pumped, so at 100MHz it has 400MHz of bandwidth; DDR at 200MHz has 400MHz of bandwidth. But RDRAM's bus is only one quarter of the width of a P4's bus; so, after using double-data rate to get 800MHz of bandwidth, it is still only providing half the bandwidth that the P4 bus wants at 400MHz. So, dual-channel controllers are used to provide the full bandwidth.

RDRAM had several advantages over SDRAM when it was first introduced. But it had a lot of disadvantages. The biggest was that it required a license fee paid to Rambus for every chip made. Combined with the fact that it was a brand new memory type, it ended up costing a lot more to make and sell at first. The market for it was also not nearly as large as for SDRAM at first, since only the P4 used it in computers and there were still plenty of people using P3's and Athlons and P2s and Cyrix's (the i820 and i840 allowed RDRAM with the P3, but overall it wasn't successful; Intel doesn't even list them as one of their older products). The serial design allowed it to reach high speeds quickly, on paper, but it ended up being harder to do it in reality, and that's why PC600 and PC700 came out (along with the fact that those modules could be cheaper to compete with SDRAM).

RDRAM's latency was also an issue. It had plenty of bandwidth for a P3, not enough bandwidth for a P4 (in the i820), and the latency was a lot higher than SDRAM. So it didn't perform better in all applications, and a lot of people didn't see any reason to change to a more expensive platform just to get more performance in some uses, and less performance in others. Even PC133 outperformed RDRAM at first. With dual-channel, RDRAM took over the performance crown, but it was still expensive enough that most people ignored it. Then when DDR came into use, offering nearly the same performance but still much cheaper, nobody cared about RDRAM except Intel (in the computer world) and even they've given up on it now. The fact that only one company has control over the RDRAM design, and the small market for it, means it continues to be expensive, and doesn't advance nearly as fast as DDR. People don't want incompatibilities, they like being able to take memory from an old machine and use it when they upgrade, no matter what platform they upgrade to.

Also, MANY people don't even realize that RDRAM requires dual-channel to perform with a P4, because that's the only way it's ever been implemented as far as most people can remember. i820 didn't last long, and i840 then came out with dual-channel for the P3, and it's been dual-channel ever since. The new "32-bit" RDRAM modules also confuse the issue more, because they're just two pieces of 16-bit modules stuck together in one slot; the memory controller is still dual-channel and still accesses them as two channels, but it's cheaper to build them in one and only have one slot on the motherboard for both channels. You quite often see RDRAM proponents pointing to DDR and laughing that it takes dual-channel to compete with RDRAM, and they don't seem to see the irony in that RDRAM has to be running at 4 times the frequency in order to provide the same bandwidth as DDR, and that even with dual-channel all this time it still never was good enough to make people switch in large numbers.


so running ram aynchronously from cpu fsb is bad. but isn't that what you're basically doing when you use the cpu/mem ratios??
e.g. i have a 133 FSB p4... and i have DDR400 (200fsb). i run at at a 4:6 (133:200) ratio so i can use up all the ram. isn't this considered using it asynchronously? ie. isn't using ANY ram that is NOT DDR266 (matching a 133 cpu) running it asynchronously? so should we only use DDR266 for all 133FSB chips?

If you are able to use memory synchronously and provide enough bandwidth for the frontside bus, it is best to do so. However if your frontside bus is so fast that you can't provide enough bandwidth from memory unless you run the memory much faster, you get better performance despite any bus delay issues. This is another reason that dual-channel DDR or RDRAM for the P4 is better than trying to make the memory run faster and faster.

So if you had a 133MHz/533MHz bus P4, yes the latencies are optimized when both are run at 133MHz, but the memory is then only providing half the bandwidth the processor needs, and performance suffers. Running the memory at a higher speed results in slight losses due to the bus delays from the asynch operation, but the performance gained from the increased memory bandwidth is more than enough to make up for it in every instance. I doubt you could find any application where the extra memory bandwidth wasn't enough to make latency issues completely ignorable, because the difference between a P4 bus and DDR bandwidth is so significant.

Using dual-channel of course brings the best of both worlds. 266MHz DDR is perfectly matched with a synchronous bus and the two channels provide the perfect amount of bandwidth to the processor.

The Athlon is a different story, because of its slower frontside bus. The 266MHz bus Athlon is full matched in both synchronicity and bandwidth by a single channel of DDR266. The main reason nforce and nforce2 benefit from dual-channel is twofold: the two memory controllers are optimized to reduce latency by operating independently (only one memory controller in Intel chipsets) so that one controller can be actively reading or writing while the other is preparing for the next operation, and the increased bandwidth allows the onboard video of the IGP to have plenty of bandwidth without reducing the bandwidth to the processor or incurring delays by having to increase the memory speed.
 

athlonxp2000

Member
Feb 9, 2003
64
0
0
Lord Evermore,
THANK YOU very very much for your lengthy and extremely informative reply. i think i've learned a lot more about P4s and DDR/RDRAM ... you've answered all my questions! Thanks a lot again. Your help was more than greatly appreciated! Now I know who to bug when I have more of these CPU/MEM/FSB questions...
 

User0101

Junior Member
Jun 5, 2003
1
0
0
Hey guys, I have a question about installing DDR ram into mysocket 478 board with P4. Its a 1.7gzh quadpumped 100 fsb. I am currently using 133mzh SDRam which works fine but lags certain high end apps. I bought DDR3200 (i didn't realize that i was supposed to get 2100) and installed it. I figure that faster ram shoudn't be a problem as it should be backwards compatible. The problem is that the same high end app lags worse now. I set the cpu/mem in bios to 100/133 and even 100/100 with CAS set to 2T.

I've never used DDR ram in my system before so I'm not sure if I maybe need to set a jumper or something? My board is a P4S5MG.

Any help is appreciated and you can email if at user@fatalexception.cjb.net as well.
Thanks

- Kevin