Welcome Guest ( Log In | Register )

Outline · [ Standard ] · Linear+

 The "Dual-core" vs. "Quad-core" guide, Which one should you choose?

views
     
TSkmarc
post May 17 2008, 12:16 AM, updated 17y ago

The future is here - Cryptocurrencies!
Group Icon
Elite
14,576 posts

Joined: May 2006
From: Sarawak



The "Dual-core" vs. "Quad-core" guide

Time and again, the million dollar question crops up � �Should I buy a dual-core or a quad-core?�

There are scattered pieces of information all over the net. This guide has been created in an attempt to compile, summarize and add useful information and opinions.

Please note:
- I welcome any advice or suggestions that you may have.
- Any mistakes or incorrect facts are regretted and will be corrected when informed.
- I'm not pro-Intel. It's just that I have been using Intel CPUs lately and have more experiences with them

Index
1) Definitions
2) Dual-core vs Quad-core
3) Quad-core - There must be some advantages right?
4) Real world applications/software/games
5) CPU charts 2007
6) Summary

Definitions

The boring stuff. Skip this if you want to go straight to the main topic!

Thread
A thread in computer science is short for "thread of execution". It is is a stream of instructions from a certain program. Threads are a way for a program to fork (or split) itself into two or more simultaneously (or pseudo-simultaneously) running tasks. (wikipedia).

The OS bundles instructions in threads so that it can effectively simulate multitasking (i.e. running 2 programs at once). The CPU basically processes one thread, then switches to another thread (this is term as "context switching"). By doing this very fast at a fixed interval (this is term as "time slice"), it can simulate the illusion that it's running 2 programs at the same time.

For example, if you have a single core CPU, and are running a few programs simultaneously, you can observe that all the programs/tasks are running together without any problems..... It may look like multitasking (as you are running a few task simultaneously) but in reality, it is just an illusion.....

Multi-threading
Multithreading refers to the capability of an application/game to execute different parts of it's program, called threads, simultaneously. This can only be done if the application/game was designed and programmed to do multithreading. Single-threaded programs cannot run this way because it was not programmed as such.

Superthreading
Also know as time-slice multithreading

A multithreading approach that weaves together the execution of different threads on a single processor without truly executing them at the same time. It is motivated by the observation that the processor is occasionally left idle while executing an instruction from one thread. Super-threading seeks to make use of unused processor cycles by applying them to the execution of an instruction from another thread (wikipedia).

Hyperthreading
Also known as simultaneous multithreading (SMT).

An Intel-proprietary technology used to improve parallelization of computations performed on PC microprocessors via simultaneous multithreading. It is an improvement on super-threading (wikipedia).

Hyperthreading was originally introduced by Intel in the single-core Pentium 4 processors. Intel claims up to a 30% speed improvement compared against an otherwise identical, non-simultaneous multithreading Pentium 4. The performance improvement seen is very application-dependent, however, and some programs actually slow down slightly when Hyper Threading Technology is turned on (wikipedia).

Hyperthreading results in a simulated second virtual core within a physical core CPU (single core) and was the first step to take advantage of multi-threaded applications on the desktop. In other words, hyperthreading makes a CPU with a single core pretend to be two so that none of the CPU is being wasted when running programs that don't use the CPU to its full potential.

Except for its performance implications, this innovation is transparent to operating systems and programs. All that is required to take advantage of Hyper-Threading is symmetric multiprocessing (SMP) support in the operating system, as the logical processors appear as standard separate processors.

Remember that hyperthreading can only run on CPUs that have the Hyperthreading technology. Intel is again introducing the hyperthreading technology in the upcoming Nahelem core. This technology would simulate four additional threads in quad-core processors (you could say a virtual 8 core CPU!) and eight additional threads in eight-core processors (for a total of 16).

More details here :
Intro to Multithreading, Superthreading and Hyperthreading (by Jon Stokes)
Hyperthreading - Tomshardware
Hyperthreading (wikipedia)

Note : Multithreading is not the same as multitasking in that threads share more of their environment with each other than do tasks under multitasking (please google for more info on this)

Analogy
Confused? Ok, I will attempt to explain this using a real world example. (Kindly correct me if the example is incorrect or wrong).

Let's take a Malaysian car factory, with 4 workers building 4 separate cars..... say a waja, a saga, a Gen2 and a Lotus Elise shocking.gif ..... (For this example, the car factory is your CPU)

However, the car factory has only one production line, meaning that at any one time, only one worker can work on his car. (The production line is the process. As your CPU is a single-core, it can only run only one process at a time)

In that production line, it is divided into a few sections i.e. metal section for creating the body, engine section, electrical section, interior car section, painting section, tyre section and final assembly section. (Each section is like the "thread" in the process/program)

Because the production line can only accommodate one worker at a time, it means that one worker can only build his car until he finishes it at the final assembly area before another worker can start building his car. (This is like a single-core CPU running a single-threaded process/program)

This is wasteful, isn't it?

Furthermore, if the worker gets stuck somewhere down the production line, e.g. at the engine section, the whole production line would come to a stop until he gets through the whole production line.....

Understand so far?

Ok, suppose that the production line can allocate a fixed time for each person to work on the production line, say 30 minutes for each worker (time slicing). This means that all 4 workers can work on the production line once it is their turn to do so. However, only one worker can work on the production line at any one 30-minute time. (This is analogous to multithreading). So, even if one worker is stuck at a certain section, once his 30 minutes is up, he has to stop while other workers start their 30-minute allotted time.

So, what you see is the "illusion" that all 4 workers are working in the factory but in fact, only one worker is working at any one time. The good thing about this is that other workers can still continue their work even if one worker is stuck somewhere.....

(I can't really understand superthreading, so I can't give an analogy on that. Anybody can help?)

Now, suppose that the production line can accommodate 2 workers in any section of the production line at any one time. This means that 2 workers can work simultaneously to complete their car. As such, even though there is only one production line, due to this ability, it is like having each worker working in their own production line or it is like having 2 production lines instead of one. (This is hyperthreading).

Due to this, the production line would be more efficient as 2 workers can build 2 cars at the same time.

Important : Of course, this is not really what happens in CPU. This analogy is just trying to make you understand what each term means.

Note : I hope my analogy is not flawed. Any expert help would be appreciated!!! thumbup.gif

Dual-core vs Quad-core
What are the advantages/disadvantages of dual-core vs. quad-core?

Dual-core
- Less power consumption
- Less heat generation
- Better overclocking capabilities
- Lower price
- At the same price point, a dual-core generally has a higher stock/overclocking speed

Quad-core
- Higher power consumption
- Higher heat generation
- Lower overclocking capabilities
- Higher price
- Even with double the cores of dual-core, the improvement in any given application that supports 4-cores is not doubled! (note : The folding program is one exception, where you can get almost double the computation with quads!!!)

Important : Please note that when we talk about dual vs quad, the comparison is usually valid for the same types of CPU family i.e. comparing a dual conroe with a quad conroe, or a dual penryn vs. a quad penryn.....

Power consumption
- higher for quads either at idle or at load
- which leads to higher electricity bill!

Here's a nice chart from www.bit-tech.net
Source : http://www.bit-tech.net/hardware/2008/04/0...00_and_e8200/11

Attached Image

Heat generation
- 4 cores will generate more heat
- As such, a quad would need better cooling
- Remember that heat is the no. 1 enemy of overclocking

This is reflected as TDP (although Intel and AMD's definition of TDP is different). See the table below....
Attached Image

Overclocking
Quad-cores loses out to dual-cores in terms of overclocking in every aspect (even if they use the same processor die):

1) Speed - dual-core can overclock higher at any given vcore
--- e.g. my previous E6750 can OC to 3.5Ghz at 1.400v in BIOS, where my current Q6600 can only reach 3.2Ghz at 1.400v in BIOS....

2) FSB - quad-cores usually have a lower max FSB, mainly due not only to heat but bus speed issues
--- e.g. a E6750 G0 stepping may max at 490-500mhz.... a Q6600 G0 may only max at 450-460mhz....

3) Tweaking/BIOS setup - a quad-core may need more tweaks in BIOS e.g. VTT, GTL, etc....

4) Vdroop - using a similar setup/motherboard, quad-cores usually have a larger vdroop, making load vcore lower and thus less overclocking speed
--- It is observed that quad-core results in more vdroop
--- For example, for a BIOS-set vcore of 1.400v:
------ a dual-core may result in a vdrop/vdroop of at load e.g. : 1.39v/1.36v
------ a quad-core usually has a higher vdrop/vdroop at load e.g. : 1.36v/1.32v
--- So, if you look at the real vcore at load, the dual will be running at 1.36v whereas the quad is running at 1.32v, which is 0.04v lower.....

5) Heat - there will be much more heat generated for an overclocked quad-core as compared to an overclocked dual-core
--- this will again, limit the overclocking capabilities of the quad....

Prices
Important : Please note that the prices refer to RETAILS units and not OEM..... wink.gif

Speed for speed - Dual-cores are cheaper than quad-cores
- e.g. E6600 is cheaper than Q6600 (both stock speed at 2.4Ghz)
- e.g. E6750 is also cheaper than Q6600 (Even though the E6750 runs faster at 2.66Ghz)

At the same price point - Dual-core are generally has a faster speed
- E.g. Previous, you could probably get a E6850 (3.0Ghz) at the same price as a Q6600 (2.4Ghz) - dropping prices not withstanding
- Due to this factor, the dual-core would be better suited for non-overclockers.....

- Comparing a E6850 vs a Q6600 (quoted below): http://www.neoseeker.com/resourcelink.html?rlid=154933

QUOTE
The advantages of dual-core Core 2 Duo E6850 over the quad-core Core 2 Quad Q6600 look as follows:
- 25% higher clock speed ensuring higher performance in applications that aren�t optimized for multi-threading;
- Higher bus frequency that increases the memory subsystem performance. Peak bandwidth of the bus between the processor and memory for CPUs with 1333MHz bus is 10.7GB/s vs. 8.5GB/s by CPUs with 1067MHz bus.
- 46% lower heat dissipation that allows using relatively simple and inexpensive cooling solutions, even during overclocking.

The advantages of the quad-core Core 2 Quad Q6600 over dual-core Core 2 Duo E6850:
- Twice as many computational cores that ensure higher performance in multi-threaded applications.
- Twice as large L2 cache memory. It is especially crucial for Windows Vista users as this operating system can distribute computational threads intellectually over the cores with shared or exclusive L2 cache.
- Comparing a E6850 vs a QX6850 : http://www.tkarena.com/Articles/tabid/59/c...33/Default.aspx

- Comparing a E8500 vs a Q9300 (quoted below) : http://www.xbitlabs.com/articles/cpu/displ...00_5.html#sect0

QUOTE
This picture is very ambiguous. There are still quite a lot of applications that haven�t been optimized for CPUs with more than two cores that is why Core 2 Quad Q9300 gets often defeated by Core 2 Duo E8500 due to the higher clock frequency of the latter. It is especially frustrating that games, even the latest ones, fall into the non-optimized applications category, as they still cannot use efficiently the advantages of multi-core micro-architecture. However, the situation is not as hopeless as it was 6 months ago, for instance. Game developers started paying some attention to optimizing their work for processors with more than two cores onboard. The list of games that provide quality quad-core processors support has increased significantly and currently includes such popular titles as Supreme Commander, Lost Planet: Extreme Condition, Unreal Tournament 3, Microsoft Flight Simulator X, etc.
-Comparing a E8600/E8500 vs a Q6700/Q6600 : http://www.firingsquad.com/hardware/intel_...iew/default.asp

QUOTE
Ultimately your opinion on the E8600 is going to depend on how you use your PC. If you’re the type of user who spends a lot of time with video encoding and other apps like Photoshop and Premiere and not so much gaming, a dual-core CPU like the E8600 probably won’t do despite its 3.33GHz clock speed.

Gamers however that don’t dabble with these apps would be well served by the E8600. It has an enormous amount of headroom for overclocking, blazing clock speed, and consumes less power than comparably priced quad-core CPUs from AMD and Intel.

For these users the only real downside to the E8600 is its price: the CPU is selling on Newegg right now for $275; $85 more than the E8500, which performed just 2-3% slower in most of our testing.

Is the E8600 worth an extra $85? For most users, probably not. But for that enthusiast who really wants to OC this chip to its fullest potential, it really is nice having that 10.0 clock multiplier.

If it were my money though I’d probably save the cash and get an E8400.


For gamers:
- The graphic card is usually more important than the CPU (in general)
- the money saved to get a dual-core instead of a quad-core can be used to spend on better graphic cards!!!


Read more about this here :
http://www.tomshardware.com/reviews/dual-quad,1720-18.html
http://www.guru3d.com/article/cpu-scaling-...e-processors/11

Quad core - there must be some advantages right?

1) Quad core has a distinct performance advantage in a wide variety of professional applications because many of them are design for multithreading
- Video editing/encoding
- 3D graphics rendering
- Image processing
- Scientific computing e.g. Folding
- many background processes e.g. anti-virus, anti-spyware, Bittorrent, etc...
- multitasking, examples are:
--- DivX encode + 720p Quicktime - http://www.hexus.net/content/item.php?item=9323&page=8
--- MP3 & WME9 encoding while gaming - http://www.firingsquad.com/hardware/intel_...view/page10.asp

- Audio encoding???

2) Quads usually have larger L2 cache, which maybe useful for cache-intensive applications

However, in games, the advantages of quad-core is minimal as most current games support only a single thread and occasionally two, but rarely four.


Real world applications/softwares/games

Note : Numbers in bracket are the sources/references listed below

No or negligible improvement (speed for speed) using quad-core
Games
- Battlefield 2 (16)
- Call of Duty 2 (1)
- Call of Duty 4 : Modern warfare (14,18)
- Company of Heroes (12,19)
- Crysis ? (13,14,15,17,18,19) - most review does not show any improvements, ? graphic card bottle-neck?
- Elders scroll : Oblivion (3,6)
- Enemy territory : Quake wars (18)
- Far cry (9)
- FEAR : Extraction point (1,9,14,18)
- Half life : Episode 1 (6)
- Half Life : Lost coast (12)
- Half life 2 Episode 2 ? (13,14) - suppose to support quad core but reviews say otherwise
- Need for speed : Most wanted (7)
- Prey (2)
- Quake 4 (1,2,9)
- Quake wars : Enemy territory (19)
- Rainbow 6 : Vegas (3)
- Serious sam 2 (2)
- Stalker - Shadow of Chernobyl (18)
- Unreal tournament 2004 (2)
- Warhammer : Mark of chaos (2)
- World in conflict (13,15,17,18,19)
- World of warcraft (17)

Applications
- Adobe premier (16)
- Aquamark 3 (5)
- AVG antivirus (2) - actually slower!
- Blender (15)
- Clone DVD 2 (2)
- iTunes audio/mp3 encoding (2,11,13)
- LAME 3.97/LAME MP3 Encoder (1,2,8,16)
- Mathematica (13)
- Mozilla (16)
- MS Office (16)
- Org-Vorbis 1.1.2 (1)
- Photoshop 7.0.1/CS2/CS3 (2,9,16)
- Photoshop Elements (10)
- Pinnacle studio 11 Plus (2)
- Powerpoint to PDF (2)
- SpecViewperf 8.01 (5)
- Tar Archiving (14)
- Techgauge Image Suite (14)
- Videowave movie creator (16)
- Winzip 8.1 (16)
- xviD 1.13 (1,2)

Improvement (speed for speed) using quad core
Games
- Alan Wake
- Deep Fritz 10 Chess (2)
- Lost planet : Extreme condition (11,19)
- Splinter cell : Double Agent
- Supreme commander (2) - some reviews show no improvement
- Unreal Engine 3 e.g. Unreal tournament 2007 (13)
- Valve source engine (3)

- Hellgate : London?
- Assassin's creed?

Applications
- 3D Studio Max 7.0/8.0/9.0 (1,6,14)
- 7-Zip (14)
- Adobe Lightroom 1.2 (14)
- Adobe Premier 2.0 (2)
- After effects CS3 (13)
- AutoMKV (x264 Encoding (15)
- Cinebench 2003/9.5/10 (3,5,6,8,11,14,15,19)
- Cinema 4D release 10 (2)
- Divx 6.6/6.8 (optimized for quad-core) (1,2,13,15)
- Excel 2007 (11)
- Folding (16)
- GCC compiler (14)
- HDTV playback (with Power DVD 7.3) (2)
- Lightwave 3D 7.5 (5)
- Mainconcept H.264 Encoder (2,13)
- Nero Recode (6)
- Paint.NET x64 3.20 (15)
- picColor (8)
- Pinnacle Studio Plus v10.6 (4)
- POV-Ray (3,16)
- Quick Time Pro v7.0.4 (4)
- Sony Vegas Movie Studio Platinum 8 (15)
- The Panaroma Factory (8)
- Valve particle benchmark (6)
- VirtualDub 1.7.6 (14)
- Windows Media Encoder (3,8,16,19)
- Wine Compile (GCC 4.1.1, i686) (6)
- Winrar 3.7 (11)
- Winrar 3.71 (2,15)
- XMpeg 5.0.3 (5)

- Any CPU benchmark software (obviously!) - e.g PCMark 2005 (1), Sisoft Sandra CPU test (1), 3Dmark

Sources
1) http://www.tomshardware.com/reviews/extreme-fsb-2,1663.html
2) http://www.tomshardware.com/reviews/dual-quad,1720-24.html
3) http://www.codinghorror.com/blog/archives/000942.html
4) http://www.techspot.com/review/36-intel-co...6600/page6.html
5) http://www.neoseeker.com/resourcelink.html?rid=134470
6) http://techgage.com/article/intel_core_2_quad_q6600/4
7) http://www.overclockersclub.com/reviews/q6600/11.htm
8) http://techreport.com/articles.x/12737/8
9) http://www.hardwaresecrets.com/article/463/5
10) http://www.trustedreviews.com/cpu-memory/r...-E6850-E6750/p7
11) http://www.neoseeker.com/resourcelink.html?rlid=154933
12) http://www.firingsquad.com/hardware/intel_...eview/page8.asp
13) http://www.xbitlabs.com/articles/cpu/displ...00_5.html#sect0
14) http://techgage.com/article/intel_core_2_d...fdale_arrives/5
15) http://www.bit-tech.net/hardware/2008/04/0...400_and_e8200/4
16) http://techreport.com/articles.x/11160/5
17) http://www.tkarena.com/Articles/tabid/59/c...38/Default.aspx
18) http://www.guru3d.com/article/cpu-scaling-...re-processors/3

19) http://www.firingsquad.com/hardware/intel_...eview/page4.asp

Others (to be updated):
http://www.tomshardware.com/reviews/multi-core-cpu,2280.html

CPU charts 2007 - Tomshardware

Here's a link to Tomshardware's CPU charts 2007 : Tomshardware CPU charts 2007
- you can choose the type of program to compare
- and select the CPU you want to compare with (add or remove a CPU)
- very good chart although limited programs/games available

Update : Tomshardware's CPU charts 2008 : http://www.tomshardware.com/charts/desktop...chmarks,31.html

Summary

Based on current environment, this is my humble opinion....

In reality, the quad-core is ahead of software development, especially in mainstream consumer applications and games. Many quad core owners may be under utilizing their quad core, which, if replaced with a similarly priced dual-core, would probably resulted in more advantages in every aspects of computing/gaming.

By the time software development catches up with current hardware (if it ever does but at least with multithreading), a new generation of quad-cores or even octa-cores might have been rolled out. At that time, the multi-cores would be in a better position to take advantage of multithreaded software/games as compared to now.

In conclusion, if you are contemplating quads but not really using multithreaded software/games, remember that a similarly-priced dual-core might be a better option.

All said, the final decision is still yours.... new dual-core or quad-core, your rig will rock! thumbup.gif

This post has been edited by kmarc: May 2 2009, 11:50 PM

 

Change to:
| Lo-Fi Version
0.0156sec    0.84    6 queries    GZIP Disabled
Time is now: 10th December 2025 - 02:46 AM