Multi-channel memory architecture

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Not to be confused with interleaved memory.

In the fields of digital electronics and computer hardware, multi-channel memory architecture is a technology that increases the data transfer rate between the DRAM memory and the memory controller by adding more channels of communication between them. Theoretically this multiplies the data rate by exactly the number of channels present. Dual-channel memory employs two channels. The technique goes back as far as the 1960s having been used in IBM System/360 Model 91 and in CDC 6600.[1]

Modern higher-end chipsets like the Intel i7-9x series and various Xeon chipsets support triple-channel memory. In March 2010 AMD released Socket G34 and Magny-Cours Opteron 6100 series[2] processors which support quad-channel memory. In 2006 Intel released chipsets that support quad-channel memory for their LGA771 platform[3] and later in 2011 for their LGA2011 platform.[4] Microcomputer chipsets with even more channels were designed: for example, the chipset in the AlphaStation 600 (1995) supported eight-channel memory, but the backplane of the machine limited operation to four channels.[5]

Dual-channel architecture[edit]

Dual channel memory slots, color-coded orange and yellow for this particular motherboard.

Dual-channel-enabled memory controllers in a PC system architecture utilize two 64-bit data channels. Dual channel should not be confused with double data rate (DDR), in which data exchange happens twice per DRAM clock. The two technologies are independent of each other and many motherboards use both, by using DDR memory in a dual-channel configuration.

Operation[edit]

Dual-channel architecture requires a dual-channel-capable motherboard and two or more DDR, DDR2 SDRAM, or DDR3 SDRAM memory modules. The memory modules are installed into matching banks, which are usually color-coded on the motherboard. These separate channels allow the memory controller access to each memory module. It is not required that identical modules be used (if motherboard supports it), but this is often recommended for best dual-channel operation.

Motherboards supporting dual-channel memory layouts typically have color-coded DIMM sockets. Coloring schemes are not standardized and have opposing meanings, depending on the motherboard manufacturer's intentions and actual motherboard design. Matching colors may either indicate that the sockets belong to the same channel (meaning that DIMM pairs should be installed to differently colored sockets), or they may be used to indicate that DIMM pairs should be installed to the same color (meaning that each socket of the same color belongs to a different channel). The motherboard's manual will provide an explanation of how to install memory for that particular unit. A matched pair of memory modules may usually be placed in the first bank of each channel, and a different-capacity pair of modules in the second bank.[6]

Modules rated at different speeds can be run in dual-channel mode, although the motherboard will then run all memory modules at the speed of the slowest module. Some motherboards, however, have compatibility issues with certain brands or models of memory when attempting to use them in dual-channel mode. For this reason, it is generally advised to use identical pairs of memory modules, which is why most memory manufacturers now sell "kits" of matched-pair DIMMs. Several motherboard manufacturers only support configurations where a "matched pair" of modules are used. A matching pair needs to match in:

  • Capacity (e.g. 1024 MiB). Certain Intel chipsets support different capacity chips in what they call Flex Mode: the capacity that can be matched is run in dual-channel, while the remainder runs in single-channel.
  • Speed (e.g. PC5300). If speed is not the same, the lower speed of the two modules will be used. Likewise, the higher latency of the two modules will be used.
  • Same CAS Latency (CL) or Column Address Strobe.
  • Number of chips and sides (e.g. two sides with four chips on each side).
  • Matching size of rows and columns.

Dual-channel architecture is a technology implemented on motherboards by the motherboard manufacturer and does not apply to memory modules. Theoretically any matched pair of memory modules may be used in either single- or dual-channel operation, provided the motherboard supports this architecture.

Performance[edit]

Theoretically, dual-channel configurations double the memory bandwidth when compared to single-channel configurations. This should not be confused with double data rate (DDR) memory, which doubles the usage of DRAM bus by transferring data both on the rising and falling edges of the memory bus clock signals.

Tom's Hardware found little significant difference between single-channel and dual-channel configurations in synthetic and gaming benchmarks (using a "modern (2007)" system setup). In its tests, dual channel gave at best a 5% speed increase in memory-intensive tasks.[7] Another comparison by Laptop logic resulted in a similar conclusion for integrated graphics.[8] The test results published by Tom's Hardware had a discrete graphics comparison.

Another benchmark performed by TweakTown, using SiSoftware Sandra, measured around 70% increase in performance of a quadruple-channel configuration, when compared to a dual-channel configuration.[9]:p. 5 Other tests performed by TweakTown on the same subject shown no significant differences in performance, leading to a conclusion that not all benchmark software is up to the task of exploiting increased parallelism offered by the multi-channel memory configurations.[9]:p. 6

Ganged versus unganged[edit]

Dual-channel was originally conceived as a way to maximize memory throughput by combining two 64-bit buses into a single 128-bit bus. This is retrospectively called the "ganged" mode. However, due to lackluster performance gains in consumer applications,[10] more modern implementations of dual-channel use the "unganged" mode by default, which maintains two 64-bit memory buses but allows independent access to each channel, in support of multithreading with multi-core processors.[11][12]

"Ganged" versus "unganged" difference could also be envisioned as an analogy with the way RAID 0 works, when compared to JBOD.[13] With RAID 0 (which equals to "ganged" mode), it is up to the additional logic layer to provide better (ideally even) usage of all available hardware units (storage devices, or memory modules) and increased overall performance. On the other hand, with JBOD (which equals to "unganged" mode) it is relied on the statistical usage patterns to ensure increased overall performance through even usage of all available hardware units.[11][12]

Triple-channel architecture[edit]

Operation[edit]

DDR3 triple-channel architecture is used in the Intel Core i7-900 series (the Intel Core i7-800 series only support up to dual-channel). The LGA 1366 platform (e.g. Intel X58) supports DDR3 triple-channel, normally 1333 and 1600Mhz, but can run at higher clock speeds on certain motherboards. AMD Socket AM3 processors do not use the DDR3 triple-channel architecture but instead use dual-channel DDR3 memory. The same applies to the Intel Core i3, Core i5 and Core i7-800 series, which are used on the LGA 1156 platforms (e.g., Intel P55). According to Intel, a Core i7 with DDR3 operating at 1066 MHz will offer peak data transfer rates of 25.6 GB/s when operating in triple-channel interleaved mode. This, Intel claims, leads to faster system performance as well as higher performance per watt.[14]

When operating in triple-channel mode, memory latency is reduced due to interleaving, meaning that each module is accessed sequentially for smaller bits of data rather than completely filling up one module before accessing the next one. Data is spread amongst the modules in an alternating pattern, potentially tripling available memory bandwidth for the same amount of data, as opposed to storing it all on one module.

The architecture can only be used when all three, or a multiple of three, memory modules are identical in capacity and speed, and are placed in three-channel slots. When two memory modules are installed, the architecture will operate in dual-channel architecture mode.[15]

Supporting processors[edit]

Intel Core i7:

  • Intel Core i7-9xx Bloomfield, Gulftown
  • Intel Core i7-9x0X Gulftown

Intel Xeon:

  • Intel Xeon E55xx Nehalem-EP
  • Intel Xeon E56xx Westmere-EP
  • Intel Xeon ECxxxx Jasper Forest
  • Intel Xeon L55xx Nehalem-EP
  • Intel Xeon L5609 Westmere-EP
  • Intel Xeon L5630 Westmere-EP
  • Intel Xeon L5640 Westmere-EP
  • Intel Xeon LC55x8 Jasper Forest
  • Intel Xeon Wxxxx Bloomfield, Nehalem-EP, Westmere-EP
  • Intel Xeon X55xx Nehalem-EP
  • Intel Xeon X56xx Westmere-EP[16][17]

Quadruple-channel architecture[edit]

Operation[edit]

DDR3 Quadruple-channel architecture is used in the AMD G34 platform and the Intel LGA 2011 platform (e.g., Intel X79 or Intel X99). AMD processors which are used on the C32 platform instead use dual-channel DDR3 memory. Intel processors which are used on the LGA 1155 platform (e.g., Intel Z68) instead use dual-channel DDR3 memory.

The architecture can only be used when all four, or a multiple of four, memory modules are identical in capacity and speed, and are placed in quad-channel slots. When two memory modules are installed, the architecture will operate in dual-channel architecture mode. When three memory modules are installed, the architecture will operate in triple-channel architecture mode.[15]

Supporting processors[edit]

AMD Opteron:

  • Opteron 6100-series "Magny-Cours" (45 nm)[2]
  • Opteron 6200-series "Interlagos" (32 nm)[18]
  • Opteron 6300-series "Abu Dhabi" (32 nm)[19]

Intel Core i7:

  • Intel Core i7-5960X
  • Intel Core i7-5930K
  • Intel Core i7-5820K
  • Intel Core i7-4960X
  • Intel Core i7-4930K
  • Intel Core i7-4820K
  • Intel Core i7-3970X
  • Intel Core i7-3960X
  • Intel Core i7-3930K
  • Intel Core i7-3820

Intel Xeon:

  • Intel Xeon E5-xxxx v3
  • Intel Xeon E7-xxxx v2
  • Intel Xeon E5-xxxx v2
  • Intel Xeon E7-xxxx
  • Intel Xeon E5-xxxx

See also[edit]

References[edit]

  1. ^ Jacob, Bruce; Ng, Spencer; Wang, David (2007). Memory systems: cache, DRAM, disk. Morgan Kaufmann. p. 318. ISBN 978-0-12-379751-3. 
  2. ^ a b "Opteron 6000 Series Platform Quick Reference Guide" (PDF). AMD. Retrieved 2012-10-15. 
  3. ^ 5000P memory controller, Intel .
  4. ^ Intel LGA2011 socket x68 express chipset pictured, Tech power up .
  5. ^ John H. Zurawski; John E. Murray; Paul J. Lemmon, The Design and Verification of the AlphaStation 600 5-series Workstation, HP 7 (1) .
  6. ^ "Intel Dual-Channel DDR Memory Architecture White Paper" (PDF, 1021 KB) (Rev. 1.0 ed.). Infineon Technologies North America and Kingston Technology. September 2003. Archived from the original on 2011-09-29. Retrieved 2007-09-06. 
  7. ^ "Part 2: RAM and HDD", Parallel Processing, Tom's Hardware .
  8. ^ Intel's Sonoma Platform: Dual Channel Performance, Laptop logic .
  9. ^ a b Shawn Baker (2011-11-16). "Intel X79 Quad Channel and Z68 Dual Channel Memory Performance Analysis". TweakTown. Retrieved 2013-11-30. 
  10. ^ "AMD Phenom X4 Memory Controller in the Ganged/ Unganged Mode". ixbtlabs.com. 2008-08-16. Retrieved 2014-01-09. 
  11. ^ a b Gionatan Danti (2010-06-17). "The Phenom / PhenomII memory controller: ganged vs unganged mode benchmarked". ilsistemista.net. Retrieved 2014-01-09. 
  12. ^ a b "BIOS and Kernel Developer's Guide (BKDG) For AMD Family 10h Processors" (PDF). amd.com. 2013-01-11. p. 107–108. Retrieved 2014-01-09. "When the DCTs are in ganged mode, as specified by [The DRAM Controller Select Low Register] F2x110 [DctGangEn], then each logical DIMM is two channels wide. Each physical DIMM of a 2-channel logical DIMM is required to be the same size and use the same timing parameters. Both DCTs must be programmed with the same information (see 2.8.1 [DCT Configuration Registers]). When the DCTs are in unganged mode, a logical DIMM is equivalent to a 64-bit physical DIMM and each channel is controlled by a different DCT. Typical systems are recommended to run in unganged mode to benefit from the additional parallelism generated by using the DCTs independently. See 2.12.2 [DRAM Considerations for ECC] for DRAM ECC implications of ganged and unganged mode. Ganged mode is not supported for S1g3, S1g4, ASB2, and G34 processors." 
  13. ^ Rouse, Margaret (September 2005). "JBOD (just a bunch of disks or just a bunch of drives)". SearchStorage.TechTarget.com. TechTarget. Retrieved 2014-01-09. 
  14. ^ X58 Product Brief (PDF), Intel 
  15. ^ a b Desktop Boards – Triple Memory Modules, Intel 
  16. ^ "Core i7 Family Product Comparison". Intel. Memory Specifications: # of Memory Channels. 
  17. ^ "Xeon Family Product Comparison". Intel. Memory Specifications: # of Memory Channels. 
  18. ^ "AMD Opteron 6200 Series Processor Quick Reference Guide" (PDF). Retrieved 2012-10-15. 
  19. ^ "AMD Opteron 6300 Series processor Quick Reference Guide" (PDF). Retrieved 2013-12-11. 

External links[edit]