source:http://www.hardwaresecrets.com/article/Everything-You-Need-to-Know-About-the-Dual-Triple-and-Quad-Channel-Memory-Architectures/133/1
Introduction
The system’s RAM (Random Access Memory) prevents the PC fromachieving its maximum capable performance. This occurs because the processor(CPU) is faster than the RAM, and usually it has to wait for the RAM to deliverdata. During this wait time the CPU is idle, doing nothing (that’s not entirelytrue, but it fits our explanation). In a perfect computer, the RAM would be asfast as the CPU. Dual-, triple-, and quad-channel are techniques used todouble, triple, or quadruple the communication speed between the memorycontroller and the RAM, thus increasing the system performance. In thistutorial, we will explain everything you need to know about these technologies:how they work, how to set them up, how to calculate transfer speeds, and more.
Before going further, let’s first explain how the RAM istraditionally connected to the system.
The RAM is controlled by a circuit called a memory controller.Currently, most processors have this component embedded, so the CPU has a dedicatedmemory bus connecting the processor to the RAM. On older CPUs, however, thiscircuit was located inside the motherboard chipset, in the north bridge chip.(This chip is also known as MCH or Memory Controller Hub.) In this case, theCPU doesn’t “talk” directly to the RAM; the CPU “talks” to the north bridgechip, and this chip “talks” to the memory. The first option provides betterperformance, since there is no “middleman” in the communications between theCPU and the memory. In Figures 1 and 2, we compare the two approaches.
Figure 1: How the RAM is accessed on CPUs with an integrated memory controller
Figure2: How the RAM is accessed on CPUs without an integrated memorycontroller
The RAM is connected to the memory controller through a series ofwires, collectively known as a “memory bus.” These wires are divided into threegroups: data, address, and control. The wires from the data bus will carry datathat is being read (transferred from the memory to the memory controller) orwritten (transferred from the memory controller to the memory, i.e., coming outof the CPU). The wires from the address bus tell the memory modules exactlywhere (which address) that data must be retrieved or stored. The control wires sendcommands to the memory modules, telling them what kind of operation is beingdone – for example, if it is a write (store) or a read operation. Anotherimportant wire present on the control bus is the memory clock signal.
The memory speeds (clock rates), maximum capacity per memorymodule, total maximum capacity, and types (DDR, DDR2, DDR3, etc.) that a systemcan accept is defined by the memory controller. For example, if a given memorycontroller only supports DDR3 memories up to 1,333 MHz, you won’t be able toinstall DDR2 memories, and if you install DDR3 memories above 1,333 MHz (e.g.,1,866 MHz or 2,133 MHz modules), they will be accessed at 1,333 MHz. (Anexception to this rule is when the motherboard allows you to configure the RAMat a clock rate above the official maximum supported by the memory controller.For a real example, current Intel CPUs support memories up to 1,333 MHz, butseveral motherboards will allow you to configure clock rates up to 2,133 MHz.)
The discussion about clock rates is reallyimportant, because the clock rate defines the available bandwidth, which is ournext subject.
Bandwidth
Bandwidth is the maximum theoretical transfer rate of acommunications channel. In the case of memories, the bandwidth is measured inmegabytes per second (MB/s) or gigabytes per second (GB/s), meaning how manymillions or billions of bytes can be transferred per second, respectively. Onebyte is a group of eight binary digits or bits, i.e., a sequence of eight 0’sor 1’s. The memory bandwidth can be determined through the following formula:
bandwidth = real clock rate x data transferred per clock cycle xbits transferred per clock cycle / 8
Memories based on the DDR (Double Data Rate) technology, such asDDR-SDRAM, DDR2-SDRAM, and DDR3-SDRAM, transfer two data per clock cycle. As aresult, they achieve double the transfer rate compared to traditional memorytechnologies (such as the original SDRAM) running at the same clock rate.Because of that, DDR-based memories are usually labeled with double their realclock rate. For example, DDR3-1333 memories actually work at 666.6 MHztransferring two data per clock cycle, and thus are labeled as being a “1,333MHz” device, even though the clock signal doesn’t really work at 1,333 MHz. Youwill need to use the real clock rate on the above formula, or you can simplifythe formula as follows and use the DDR clock rate:
bandwidth = DDR clock rate x bits transferred per clock cycle / 8
Memory modules currently used are 64-bit devices. This means that64 bits of data are transferred at each transfer cycle. Therefore, we will beusing “64” as “bits transferred per clock cycle” in the above formula. Thus, wecan simplify the bandwidth formula even further:
bandwidth = DDR clock rate x 8
That said, we can easily calculate the bandwidth of any memory.For example, DDR3-1333 memories have a bandwidth of 10,664 MB/s or 10.6 GB/s,and DDR3-1866 memories have a bandwidth of 14,928 MB/s or 14.9 GB/s.
It is very important to understand that these transfer rates arethe available bandwidth, i.e., the maximum theoretical transfer rates. When wecalculate them, we are assuming that a data transfer will occur at each clockcycle (i.e., on a DDR3-1333 memory, 1.3 billion transfers per second willoccur), which in fact never happens, because the CPU isn’t transferring data100% of the time. That is why when you measure the actual memory transfer fromyour system using a program such as Sandra,you always get a value lower than the maximum theoretical transfer rate.
The dual-, triple-, and quad-channel architectures work byincreasing the number of data wires available in the memory bus, doubling,tripling or quadrupling the available bandwidth, respectively.
It is very important to notice that this performance increase isachieved only on the memory subsystem; doubling the theoretical memoryperformance does not translate into a computer that is twice as fast. Only asmall percentage of this memory performance increase will be reflected on theoverall system performance.
Let’s now examine exactly how each of those architectureswork and how to enable them.
Dual-Channel Architecture
As we briefly discussed in the previous page, the dual-channelarchitecture expands the number of data wires available in the memory data busfrom 64 to 128. This doubles the available bandwidth. For example, if you use DDR3-1333memories, the maximum theoretical transfer rate is doubled from 10,664 MB/s(10.6 GB/s) to 21,328 MB/s (21.3 GB/s).
Each memory module, however, is a 64-bit device. Therefore, inorder for the dual-channel architecture to work, you will need to install twomemory modules in parallel, making 128 bits available.
Many people have trouble visualizing this idea. Therefore, let’sdraw some schematics. First, assume that we have a system that doesn’t supporta dual channel feature (i.e., a single-channel system).In this case, the memory controller will transfer 64 bits at a time. When wesay that the memory data bus is 64 bits wide, this means that there are 64wires (yes, physical wires on the motherboard) connecting the memory controllerand the memory sockets. These wires are labeled D0 through D63. The memory databus is shared amongst all the memory sockets. The address and control busseswill activate the proper memory socket, depending on the address from wheredata must be stored or read. We illustrate this in Figure 3.
Figure 3: How single channel works
On systems supporting dual-channel technology, the memory data busis expanded to 128 bits. This means that there are 128 wires connecting thememory controller to the memory sockets. These wires are labeled D0 throughD127. Since each memory module can only accept 64 bits at once, two memorymodules are used to fill the 128-bit data bus. See Figure 4. Because the twomodules are accessed at the same time, they must be identical (same capacity,same timings, and same clock rate).
Figure 4: How dual channel works
Now that you know what dualchannel means, the most obvious question is: “How can I enable thisarchitecture so I can increase my computer’s performance?” Let’s find out.
Enabling Dual Channel
In order to enable dual-channel architecture, you will need tohave:
- Memory controller supporting dual-channel architecture (virtually all current CPUs support dual-channel architecture).
- Two or an even number of memory modules; each pair of modules must be identical.
- Install the memory modules in the correct memory sockets on the motherboard that will enable this architecture.
First, the memory controller must support the dual-channelarchitecture. As we discussed earlier, current CPUs have this componentembedded, so almost all computers nowadays support this technology.
Second, you need to have an even number of memory modules on yoursystem, as each pair of memory modules will be accessed as a single entity.Refer to Figure 4 in the previous page. If you install just one memory module,this technique won’t work because the memory will still be accessed at 64 bitsper clock cycle. In other words, dual channel works by accessing two memorymodules in parallel, i.e., at the same time. As each pair of memory modules isaccessed as a single entity by the memory controller, the modules at each pairmust be identical. Each pair, however, can have a different total capacity. Forexample, you can install two 2 GB modules and two 1 GB modules, for 6 GB total.
This is a very important point to keep in mind when selectingparts for building a PC. Let’s say you want to build a computer with 4 GB ofRAM. In order to achieve the best performance, you must buy two 2 GB memorymodules to enable dual-channel architecture. If you buy a single 4 GB module,you will have the same memory capacity; however, the memory will be accessed insingle-channel mode, with half the bandwidth available.
The third point is to install the memory modules in the correctmemory sockets on the motherboard. You have to be very careful; otherwise, youwill buy two memory modules as recommended and end up having a system stillaccessing the memory under single-channel architecture.
In order to make our explanations easier to understand, let’sassume we have a motherboard with four memory sockets and the installation oftwo memory modules, which is the most common scenario. Number the motherboardmemory sockets as one, two, three, and four.
The rules, however, depend on the kind of systemyou own. Intel, AMD socket AM3+, and a few AMD socket AM3motherboards follow one rule, while all other AMD-based systems use adifferent rule. The following explains the differences between the two systems.
Enabling Dual Channel(Intel and AMD Socket AM3+)
Motherboards targeted to Intel CPUs and AMD socket AM3+ CPUs (anda few socket AM3 models) use sockets one and two as the first channel, andthree and four as the second channel. In order to enable the dual-channelarchitecture, you have to install one module at the first channel and onemodule at the second channel. If they are installed in the same channel, youwill have a single-channel architecture. Therefore, you must install the firstmemory module in socket one, and the second memory module in socket three, notin socket two. In other words, you have to skip one socket.
In order to make it easier for users, mostmotherboard manufacturers use different colors on the memory sockets, using onecolor for sockets one and three, and a different color for sockets two andfour. This way, you need to install the memory modules in sockets with the samecolor. See Figure 5.
Figure 5: Install modules in sockets with the same color
In Figure 6, you can see a motherboard for an Intel CPU with twomemory modules correctly installed, enabling dual-channel architecture.
Figure 6: Dual-channel mode enabled on an Intel system (notice the empty socketbetween them)
There is, however, one major exception. On some older motherboardsfrom MSI targeted to Intel CPUs, sockets one and two use the same color whilesockets three and four use another color. See Figure 7. If you install the twomemory modules in sockets with the same color on a motherboard like this, theywill work under single-channel mode, not dual-channel. So, if you find yourselfin front of an older motherboard from this manufacturer, you should not followthe color scheme. You must install the memory modules in sockets one and three,and they will be using sockets with different colors.
Figure 7: Older motherboards from MSI use a “wrong” color scheme; don’t follow it
If you are installing four memory modules which are identical,there is no rule to follow. Simply install all four modules in the four socketsavailable.
However, if you are installing four modules and they have differentcapacities, you will have to pay attention. The first pair must be installed insockets one and three, while the second pair must be installed in sockets twoand four. By “pair” we mean two identical memory modules. In other words,install the first pair in sockets with the same color, and the second pair inthe sockets using the other color.
Enabling Dual Channel(Other AMD Sockets)
Motherboards targeted to all other AMD CPUs use sockets one andthree as the first channel, and two and four as the second channel. (A fewsocket AM3 motherboards follow the scheme presented in the previous page.) Inorder to enable the dual-channel architecture, you have to install one moduleat the first channel and one module at the second channel. If they areinstalled in the same channel, you will have a single-channel architecture.Therefore, you must install the first memory module in socket one and thesecond memory module in socket two. If you have four memory modules to install,simply install the second pair in sockets three and four.
The big difference is that, while on motherboards targeted toIntel and socket AM3+ CPUs you need to skip socket two when installing twomemory modules, on motherboards targeted to all other AMD CPUs you need toinstall the memory modules sequentially.
In order to make it easier for users, mostmotherboard manufacturers use different colors on the memory sockets, using onecolor for sockets one and two, and a different color for sockets three andfour. This way, you need to install the memory modules in sockets with the samecolor. See Figure 8.
、
Figure 8: Install modules in sockets with the same color
In Figure 9, you can see a motherboard for an AMD CPU with twomemory modules correctly installed, enabling dual-channel architecture.
Figure9: Dual-channel mode enabled on an AMD system (modules installedsequentially)
Triple-Channel Architecture
As you can assume by the name, the triple-channel architecturetriples the available memory bandwidth. This is done by expanding the memorydata bus to 192 bits, which is accomplished by accessing three memory modulesat the same time.
Currently, this mode is available only on the Intel socket LGA1366(LGA1366) platform. This means that you can only enable this mode onmotherboards and Core i7 CPUs that use this socket. These processors supportDDR3 memories up to 1,066 MHz.
You will need three identical memory modules. Six modules can beused on motherboards with six memory sockets, and each group of three modulescan have different capacities, but the modules inside the same group must beidentical. If you install two memory modules, they will be accessed indual-channel mode. In this case, you won’t achieve the maximum performance ofwhich your system is capable.
There are two kinds of socket LGA1366 motherboards available:those with four memory sockets and those with six or more memory sockets.
On motherboards with four memory sockets, youmust install the memory modules sequentially, in the sockets with the samecolor. In fact, it is rather strange that these motherboards have four memorysockets, since if you install a memory module in the fourth memory socket, itwill be accessed in single-channel mode. So, the fourth module will be leftunused. See Figure 10.
Figure 10: Socket LGA1366 motherboard with four memory sockets
Motherboards with six memory sockets use the traditional schemeused by motherboards targeted to Intel CPUs. You must install the memorymodules in the first, third, and fifth memory sockets, and these sockets almostalways will use the same color, while sockets two, four, and six will use adifferent color. Therefore, simply install the memory modules in sockets withthe same color. See Figures 11 and 12.
Figure 11: Install modules in sockets with the same color
Figure 12: Triple-channel mode enabled on a socket LGA1366 motherboard with sixmemory sockets
If you want to installsix memory modules, the second group of memory modules must be installed insockets two, four, and six unless all six modules are identical, in which caseyou will fill all six memory sockets and won’t need to worry about which socketsto use.
Quad-Channel Architecture
The quad-channel architecture quadruples the available memorybandwidth. This is done by expanding the memory data bus to 256 bits, which isaccomplished by accessing four memory modules at the same time.
Currently, this mode is available only on the Intel socket LGA2011(LGA2011) platform. This means that you can only enable this mode onmotherboards and Core i7 CPUs that use this socket. These processors supportDDR3 memories up to 2,133 MHz.
You will need four identical memory modules. Eight modules can beused on motherboards with eight memory sockets, and each group of four modulescan have different capacities, but the modules inside the same group must beidentical. If you install two or three memory modules, they will be accessed indual- or triple-channel mode, respectively. Of course, in this case, you won'tachieve the maximum performance of which your system is capable.
There are two kinds of socket LGA2011 motherboards available:those with four memory sockets and those with eight or more memory sockets.
On motherboards with four memory sockets, simply fill all thesockets that are available.
Motherboards with eight memory sockets use thetraditional scheme utilized by motherboards targeted to Intel CPUs. You mustinstall the memory modules in the first, third, fifth, and seventh memorysockets, and these sockets almost always will use the same color, while socketstwo, four, six, and eight will use a different color. Therefore, simply installthe memory modules in sockets with the same color. On socket LGA2011motherboards, usually half the sockets are at one side of the CPU socket, whilethe other half is on the other side. See Figures 13 and 14.
Figure 13: Install modules in sockets with the same color
Figure 14: Quad-channel mode enabled on a socket LGA2011 motherboard with eightmemory sockets
If you want to install eight memory modules, the second group ofmemory modules must be installed in sockets two, four, six, and eight unlessall eight modules are identical, in which case you will fill all eight memorysockets and won’t need to worry about which sockets to use.
Checking if it is CorrectlyEnabled
After installing your memory modules, the final step is to checkif the dual-, triple- or quad-channel architecture is correctly enabled.
Currently, most motherboards will display thisinformation on POST, which is the screen that appears right after you turn onyour computer, showing some information about your system. Look for phrasessuch as “Dual Channel” and “Single Channel.” See Figure 15.
Figure 15: PC with dual channel mode correctly enabled (see “at Dual Channel”)
Another way to check this is by running a hardware identificationutility. We recommend running CPU-Zand checking the memory information presented on its Memory tab, at “Channels#.” See Figure 16. On this same screen, you can check the current real memoryclock rate and timings. Keep in mind that the real clock rate is half of thestated memory clock. In our example (Figure 16), the memories were beingaccessed at 333 MHz, i.e., “667 MHz.” This is a good place to check if yourmemories are being accessed at their full speed. If not, you need to check tosee what is wrong. (Usually there is a misconfiguration on the motherboardsetup or a limitation of the CPU or chipset.) Tip: Some older Athlon X2processors have a problem where memories can’t be accessed at their full speed.Click here for more information.
Figure16: PC with dual channel mode correctly enabled (see “Dual” at“Channels #”)