Agenda• Multi-core processors• Multi-channel memory architecture• Comparison between single and multi channel memory• Conclusion• References
Multi-core processors• A multi-core processor is a single computing component with two or more independent actual central processing units (called "cores"), which are the units that read and execute program instructions.• The instructions are ordinary CPU instructions such as add, move data, and branch, but the multiple cores can run multiple instructions at the same time.• Possible gains are limited by the fraction of the software that can be run in parallel simultaneously on multiple cores; this effect is described by Amdahls law.• In the best case, so-called embarrassingly parallel problems may realize speedup factors near the number of cores, or even more if the problem is split up enough to fit within each cores cache(s), avoiding use of much slower main system memory.
Multi-core processors• Dual-core processor has two cores (AMD Phenom II X2, Intel Core Duo)• Quad-core processor contains four cores (AMD Phenom II X4, Intels quad-core processors, see i3, i5, and i7 at Intel Core).• Hexa-core processor contains six cores (AMD Phenom II X6, Intel Core i7 Extreme Edition 980X)• Octa-core processor contains eight cores (Intel Xeon E7-2820, AMD FX-8150).
Multi-channel memory architecture• Multi-channel memory architecture is a technology that increases the transfer speed of data between the DRAM 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.• 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 multiplying available memory bandwidth for the same amount of data, as opposed to storing it all on one module
Multi-channel memory architecture• The memory modules are installed into matching banks, which are usually color coded on the motherboard.• A matching pair needs to match in:1. Capacity (e.g. 1024 MB): the capacity that can be matched is run in dual- channel, while the remainder runs in single-channel.2. 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.3. Number of chips and sides (e.g. two sides with four chips on each side).4. Matching size of rows and columns.
Multi-channel memory architecture• Channel, you use identical memory sticks in pairs (frequency, capacity, of the same brand if possible). [A1-A2] and/or [B1-B2] A1 = 1st place (slot 1) B1 = 2nd place (slot 2) A2 = 3rd place (slot 3) B2 = 4th place (slot 4) [A1-B1] = Group 1 of slots [A2-B2] = Group 2 of slots.
Single-channel modeThis mode provides single-channel bandwidth operations and is used whenonly one DIMM is installed or when the memory capacities of more than oneDIMM are unequal. When using different speed DIMMs between channels,the slowest memory timing is also used.
Dual-channel modeThis mode offers higher memory throughput and is enabled when the memorycapacities of both DIMM channels are equal. When using different speedDIMMs, the slowest memory timing will be used.To achieve dual-channel mode, the following conditions must be met: Same memory size (1 GB, 2 GB, 4 GB, etc.) Matched DIMM configuration in each channel
Triple-channel mode• Triple-channel reduces overall memory latency by accessing the DIMM memory sequentially. Data is spread through the memory modules in an alternating pattern.• Three independent memory channels give two possible modes of interleaving: Triple-channel mode is enabled when identical matched memory modules are installedin each of the three blue memory slots. If only two of the blue memory slotsare populated with matched DIMMs, dual-channel mode is enabled.
Quad-channel modeThis mode is enabled when four (or a multiple of four) DIMMs areidentical in capacity and speed, and are placed in quad-channel slots.When two memory modules are installed, the system will operate indual-channel mode. When three memory modules are installed, thesystem will operate in triple-channel mode.
Flex modeFlex mode results in both dual- and single- channel operationacross the whole of DRAM memory. The figure below shows aflex mode configuration using two DIMMs. The operation is asfollows:• The 2 GB DIMM in slot 1 and thelower 2 GB of the DIMM in the slot2 operate together in dual-channel mode.• The remaining (upper) 2 GB of theDIMM in Slot 2 operates in single-channel mode.
Advantages of Multi-channel modeThe shared bus between the program memory and datamemory leads to the Von Neumann bottleneck, the limitedthroughput (data transfer rate) between the CPU and memorycompared to the amount of memory. Because program memoryand data memory cannot be accessed at the same time,throughput is much smaller than the rate at which the CPU canwork. This seriously limits the effective processing speed whenthe CPU is required to perform minimal processing on largeamounts of data. The CPU is continuously forced to wait forneeded data to be transferred to or from memory. Since CPUspeed and memory size have increased much faster than thethroughput between them, the bottleneck has become more ofa problem.
Single/Multi-channel memory architecture (Experiment 1)• 1 GB Crucial DDR2-800 single modulePCMark05 tests:Total score 5756 Memory scores 4213,4324,4297 average 4302Quake 4: Average frame rate for three runs max quality 1024x768multi core off53.65 avg fpsmulticore on 53.88 avg fpsFEAR: Average frame rates for three runs max quality 1024x76842 avg fps• 2x512MB Crucial DDR2-800 kit in dual channelPCMark05 tests:Total score 5783 Memory scores 4668,4676,4674 average 4672Quake 4:Average frame rate for three runs max quality 1024x768multicore off 56.59 avg fps multicore on 58.5 avg fpsFEAR: Average frame rates for three runs max quality 1024x76842 avg fps• 2x512MB Transcend & Adata DDR2-800 two memory modulesPCMark05 tests:Total score 5729 Memory scores 4687,4670,4711 average 4689Quake 4: Average frame rate for three runs max quality 1024x768multicore off 56.48 avg fps mulitcore on 58.5 avg fpsFEAR: Average frame rates for three runs max quality 1024x76842 avg fps
Single VS Multi-channel memory architecture (Experiment 1)
Single VS Multi-channel memory architecture (Experiment 2)I opened Firefox browser, Linux terminal, Netbeans and Skype allat once using 2GB RAM and then two module of 1GB RAM andfifteen seconds difference appears with total time of threeminutes. With 2GB RAM it took three minutes and fifteenseconds on loading of all application while with two modules of1GB it took three minutes so overall performance increased to5% by dividing modules memory. Applications RAM Time Firefox Shell 2 GB 195 seconds Netbeans Skype Firefox Shell 1 GB 180 seconds Netbeans Skype
ConclusionTheoretically Multi-channel memory architecture gives doublememory speed as compare to single core processor. But inparticle it gives visible change of performance when system isusing high memory communication activity.