Announcement

Collapse
No announcement yet.

Getting lucky mixing DDR modules?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Getting lucky mixing DDR modules?

    Given a pile of same capacity modules of the same DDR/DDR2/DDR3 type, what have you guys found as the chance of getting two randomly selected modules that will just work in dual channel mode?

    Assume both modules are of the same size and speed (DDR333, DDR2700, etc. since it usually says on the label), but don't assume they have the same suggested CAS/RAS timing or manufacturer or especially rank layout...

    I have an unmatched 1GB DDR (kingston?) and a 2GB DDR2 (patriot?) module, wondering what's the chances of getting a module that I can dual channel these with. Not high, I suspect, best to have identical brands and chips on the modules? Is it possible to get two to work without them being visibly identical?
    Last edited by eccerr0r; 02-13-2021, 03:12 AM.

    #2
    Re: Getting lucky mixing DDR modules?

    it all depends on the memory controller and bios. Some of the earlier chipsets had issues with mixed bags

    Now a days most memory controllers are CPU integrated and can handle just about anything. It will slow to the lowest speed and highest latency. Yes even mixing different sizes does a form a half dual-channel. It's called asymmetric dual channel.

    Say you have a 1gb stick and a 2gb stick, IF the bios and memory controller can do it, it will put 1gb in dual channel, and the extra 1gb in single channel.

    wait, you said you have a 1gb ddr and 2gb ddr2. They're unmixable. Even with hybrid motherboards of the past that supported both, it will take one or the other

    The higher, more advanced type of memory you get, the higher chances you can run asymmetrical dual channel. I'm not sure many controllers supported it on DDR, but probably got better with DDR2 (likely especially on Athlon 64 with the integrated memory controller, something intel didn't use till Nahlem X58)
    Last edited by Uranium-235; 02-13-2021, 04:11 AM.
    Cap Datasheet Depot: http://www.paullinebarger.net/DS/
    ^If you have datasheets not listed PM me

    Comment


      #3
      Re: Getting lucky mixing DDR modules?

      From experience some RAM sticks just don't work together, probably because they don't have a matching SPD profile or the BIOS ends up selecting timings that are glitchy for a stick.
      But if they do work together (in general they do), then most likely you'll get Dual Channel if they have the same size.

      If they don't have the same size, as Uranium-235 said the board should be able to use Flex mode on Intel platforms, meaning that it uses the common size of both sticks in Dual Channel mode, and the remaining of the larger stick in Single Channel mode. I don't know exactly which board/chipset support it, but it should've been around since the Intel 915 series chipset.

      AMD nowadays support a similar feature, but I don't know exactly when they started supporting it.
      OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

      Comment


        #4
        Re: Getting lucky mixing DDR modules?

        Hmm, I did see "flex mode" or something like that on one of my machines where I haphazardly threw memory in it not caring about dual channel, thought that just meant it was trying to compensate for mismatched modules by disabling dual channel mode.

        That would be great if it could already deal with mismatched modules and still gain the benefits of dual channel. Would hope if it already could work with mismatched module sizes it would also use timing parameters that would be acceptable for both modules.

        Comment


          #5
          Re: Getting lucky mixing DDR modules?

          If the sticks don't match I modify the spd info in the sticks so they do match.

          Comment


            #6
            Re: Getting lucky mixing DDR modules?

            I'd rather the SPDs to contain the correct data for the module, whether the firmware uses that data is a different question.

            Comment


              #7
              Re: Getting lucky mixing DDR modules?

              With DDR RAM, I've never had problems throwing together even the most utter garbage brands together and still getting reliable dual-channel performance - particularly on AMD (x64) boards. One of my OC'ed Athlon 64 test systems has 2x Patriot memory sticks, and I'm running them with a slight OC at 208 MHz (416 MHz DDR) due to mem. divider in the CPU and the OC I have (250x10 - it's an Athlon 64 3200+ running happily at 2.5 GHz and stock voltage.)

              With DDR2 and Intel motherboards, I've had issues... though not so much with speed as I did with mixed chip densities - i.e. if I tried to mix a "single-sided" 1 GB module (that is, one with only 8 memory chips on one side) and a "double-sided" 1 GB module (one with 8 memory chips on each side of the module), the results were either crashes, no boot, or artifacts on IGP with shared memory. Apart from that, I don't think I've had issues with mixing different brands with different timings and still getting the motherboard to do dual channel.

              DDR3, I haven't played that much with... but so far my experience seems to be pretty much the same thing as with DDR2.

              DDR4... to new for my world. Give it another 5-10 years and I might get a PC with DDR4.

              Comment


                #8
                Re: Getting lucky mixing DDR modules?

                Weird, every time I put in differing brand/size DIMMs in a bank, I thought I've always seen that dual channel was disabled, minus that strange "flex mode" I saw which again thought was just disabling dual channel completely to be "flexible" with the memory installed, which may be a misnomer.

                Anyway, hoping that matching isn't as strict as it has been. Currently I wonder what the behavior is with a DDR2 machine that has three 512M modules and a 2G module... or three 1G modules with a 2G module.

                Wish I had some more DDR3 modules... and same boat with DDR4.

                Comment


                  #9
                  Re: Getting lucky mixing DDR modules?

                  Originally posted by eccerr0r View Post
                  Anyway, hoping that matching isn't as strict as it has been.
                  It's not strict at all.
                  Just match capacities and the chip density of all the modules.

                  Originally posted by eccerr0r View Post
                  Currently I wonder what the behavior is with a DDR2 machine that has three 512M modules and a 2G module... or three 1G modules with a 2G module.
                  Dual channel doesn't like odd number of "things".
                  2x 512 MB and 2x 1 GB will run asymetric dual channel. 4x 512M or 1G or 2G would be the best option, obviously.
                  But this 3x 1 capacity and 1x something else... I don't trust that "flex mode" crap. It's either dual-channel or it's not. And frankly, for daily desktop use and internet browsing, I don't think you'll really see a difference anyways.
                  Last edited by momaka; 02-16-2021, 03:47 AM.

                  Comment


                    #10
                    Re: Getting lucky mixing DDR modules?

                    At one point in the past, I was trying to run two modules of the same size but it visibly rejected it in the past, probably due to one being double sided and other not. That's why I was kind of worried that it would be strict about what can and can't run dual channel.

                    Indeed daily desktop use probably won't see much of a difference but when someone's using the machine to compile code, every bit helps...


                    BTW, the current "flex mode" is with three 512M DDR2 DIMMs installed and fourth bank empty. Technically two can be banked dual channel and the third on its own, but it could simply not bank any of the modules....
                    Last edited by eccerr0r; 02-16-2021, 11:29 AM.

                    Comment


                      #11
                      Re: Getting lucky mixing DDR modules?

                      FSCK.

                      My DQ45CB will run 2x2+2x1 = 6GB but fails with 3x2+1x1 = does not POST or corrupts RAM When it does boot, it reports 2x2+2x1 in BIOS insisting "dual channel" but fails OS/memtest boot.

                      My EP43-UD3L will also run 2x2+2x1=6G but also runs 3x2+1x1=7G however. Seems to run fine in asymmetric mode.

                      My Asus 945 board seems to run 3x0.5 + 1x2 but only reports 3200MB RAM due to the chipset limit (instead of the expected 3584MB. Also seems to run fine in asymmetric mode, however.

                      Seems the non-intel boards got the firmware right? Or is it just the boards that don't have onboard GPUs...
                      Last edited by eccerr0r; 04-15-2021, 01:13 PM.

                      Comment


                        #12
                        Re: Getting lucky mixing DDR modules?

                        Originally posted by eccerr0r View Post
                        At one point in the past, I was trying to run two modules of the same size but it visibly rejected it in the past, probably due to one being double sided and other not.
                        If one module of the same size is single sided, and the other is double sided, the single sided module has high density x128 chips, and the other has low density x64 chips. Even if the computer can accept both types, it can't set up to address both kinds at the same time. Many older computers ,especially Dells, can only run x64 RAM. As far as speed goes the computer usually sets the timing to match the slowest module installed.

                        Comment


                          #13
                          Re: Getting lucky mixing DDR modules?

                          I still don't get where you can put x128 chips on DIMMs othat only have 64 bits...

                          Anyway, it's weird that it's possible to put two half size in one bank and one full size in other and it will deal with that, but it wouldn't deal with modules of the same size but different ranks...

                          Comment


                            #14
                            Re: Getting lucky mixing DDR modules?

                            It changes the rows and columns of the data. If the memory controller can't recognize that layout then it won't work.
                            It has nothing to do with the 64bit logic of the CPU if that's what's confusing it for you. 32bit laptop CPUs, and OS work just fine with x64, and x128 RAM.

                            FWIW ECC RAM with the 9th extra logic chip is x72 bit.So it doesn't have to be 64 bit at that level to work. Of course the extra chip is only working within the RAM so the computer does see 64 bit modules.
                            Last edited by Retrorockit; 04-25-2021, 08:00 AM.

                            Comment


                              #15
                              Re: Getting lucky mixing DDR modules?

                              The "x128" is dealing when you access two banks at the same time and pull in two 64 bit rows. But this is dealing with two DIMMs at the same time and is irrelevant to dealing with individual modules - it's like saying to get dual channel you need to access 128 bits at a time - a tautology.

                              Even worse, if using ECC modules, when accessing a full cache line it needs to pull 144 bits at a time. So by extension, where's the modules with x144 chips?

                              This x128 thing sounds like hogwash by someone who doesn't understand what they're talking about - and until they can explain it to the bit level detail (at least from the bit line pulldowns from the 1T cells through the sense amps through all the muxing and clocking before it hits the pad driver and then what does it do before it hits the gold finger on the module itself. Remember there are only 64 data DQ gold fingers on the module, 72 if it's ECC).

                              Comment


                                #16
                                Re: Getting lucky mixing DDR modules?

                                Basically low density ram works in everything but uses more chips, high density ram doesn't work in everything. Believe it or not it's true.

                                Comment


                                  #17
                                  Re: Getting lucky mixing DDR modules?

                                  I don't think people even understand what low and high density are here. Or even what the xYYY stands for...

                                  This "density" denomination appears to be horribly misused. If you have a 4GB DIMM and there are 8 chips on it, each chip holds 4Gbits - the true chip density - on it, NO MATTER WHAT the xYYY "density" is. Whether there are two ranks or one rank, the "density" is the same and because of this you need different "xYYY" chips to build the ranks.

                                  And no kidding if the chip has too many control lines or refresh lines that the memory controller simply doesn't have, of course it won't work. Higher density chips must have more control lines, but this has no bearing on the individual bus chip width which is what the xYYY denomination stands for as far as I know hence even asking this.

                                  But x128 chips do not make sense on a single module as far as I understand. So, anyone who truly understands how "x128" works on a single DIMM works, please explain away!

                                  Comment


                                    #18
                                    Re: Getting lucky mixing DDR modules?

                                    To begin with, the 'x' is typically not used with figures such as 64 and 128 for RAM sticks. It is used with values such as 4, 8 and 16.
                                    The x4, x8 and x16 gives an information about the memory organization of the *chips* on the module, not the module itself. This corresponds to the number of data bits a single chip exposes on its data bus. So in theory a memory module would have 16 x4 chips to make a 64 bits bus, or 8 x8, or 4 x16.
                                    It turns out that if you want more memory capacity, you can multiplex the chips in what's called ranks. So for example you can put 16 x8 chips on a single module, but you have to use 2 ranks (2R) to address the 128 bits data bus width in 2x 64 bits chunks.

                                    In any case, the data bus width for a single memory module is always 64 bits.
                                    You only get 128 bits when you combine two memory modules from separate channels in a dual-channel configuration. A given channel has its dedicated 64 bits data bus physically routed on the board between the memory controller (CPU or northbridge) and one or more RAM slots. A single channel can indeed be shared across multiple RAM slots, typically 2, by using separate ranks.

                                    Memory controllers will have a limitation on the number of ranks for one module (often either single rank or dual rank on standard consumer platforms), and on the data bus width of a single chip, because a chip with a narrower data bus will require more address bits. For example with DDR2 and x4 chips, they need an additional column address bits compared to x8 and x16 that consumer Intel memory controllers don't support.
                                    (and DDR2 x16 chips require one less row address bit compared to x4 and x8)

                                    Also, the number of banks is different from the number of ranks and the number of channels, it's another parameter internal to the chips used on the module.

                                    For soldered RAM on laptop boards you can even see some x32 chips, so you have 2 chips per channels on the board for a total of 4 chips. You can also have 2 x64 chips, one per channel but this is extremely rare (only seen that on the 2018-2020 MacBook Air). In theory you could have a single "x128" chip on the board combining 2 channels but that sounds kinda crazy.

                                    Here I assume non ECC memory. With ECC memory and a compatible memory controller you get an additional 8 bits per ranks for a total of 72 bits.


                                    PS: already talked about part of this here: https://www.badcaps.net/forum/showthread.php?t=93780
                                    Last edited by piernov; 04-26-2021, 05:12 AM.
                                    OpenBoardView — https://github.com/OpenBoardView/OpenBoardView

                                    Comment


                                      #19
                                      Re: Getting lucky mixing DDR modules?

                                      The rank system refers to something different. It's common on 8GB and up newer types of memory.
                                      Here is Crucials page on that.
                                      https://www.crucial.com/support/arti...-a-memory-rank

                                      The density of the physical chips is the x64,x128 issue. In the DDR2 days it split Intel=x64, and AMD=x128. In early DDR3 this was true, but later DDR3 Intel could use either.I think AMD could always run x64 also. Now just about anything can run either type so the specification is no longer important unless building an older Intel computer.
                                      Intel compatible (x64) DDR2 800 4GB modules cost about 3x as much as similar AMD (x128) modules.
                                      4GB DDR2 FBDIMMS are cheap also. IDK about the price of 4GB DDR2 800 ECC x72 modules (non FBDIMM). There might be some refurbished stuff out there. Most Intel DDR2 chipsets can't suppport over 2GB DIMMs anyway. Just the X38 as far as I know.
                                      I have 2 Dells that can run those. The XPS 420 can run 16GB non ECC DDR2. It cost me plenty to bump it up to 12GB to run a 6GB GPU. The t3400 workstation with 2 GPU slots can run ECC. So maybe I'll catch a break there and get it to 16GB so I can add a PhysX card to make it a Supercomputer!. Both are overclockable with a QX9650.
                                      Last edited by Retrorockit; 04-26-2021, 09:32 AM.

                                      Comment


                                        #20
                                        Re: Getting lucky mixing DDR modules?

                                        Yes agreed, 128 bits across two modules makes sense (sorry as these two issues are very much related I can't remember which thread contained what anymore) but the explanation for an "AMD" x128 chip on a *single* module still does not make sense, still seems to be a "marketing gaslighting" explanation that needs to be further clarified down to bit level details.

                                        And ranks have been used on even on DDR2 that don't really have 8GB modules, and there can be multi-rank 1GB modules, so that explanation doesn't hold water.

                                        So summary of two previous posts: piernov, yes that appears correct. retrorockit needs to explain further.

                                        Comment

                                        Working...
                                        X