You are on page 1of 9

Dual Core Processing: Over-simplified, demystified and

explained.
Posted by MediaMan
Thursday, Sep 9th, 2004 at 12:42 am in Articles

Also now on Icrontic: Quad Core Processing

The latest buzz in the processor industry is about dual core processors. AMD may be the first to take the
limelight with their announcement of dual core AMD Opteron processors set to launch in mid-2005 but
Intel and IBM are cueing up their dual core processors as well.

A dual core processor is exactly what it sounds like. It is two processor cores on one die essentially like
having a dual processor system in one processor. AMD’s Opteron processor has been dual processor
capable since its inception. Opteron was designed with an extra HyperTransport link. The relevance of it
was mostly overlooked. HyperTransport Technology simply means a faster connection that is able to
transfer more data between two chips. This does not mean that the chip itself is faster. It means that the
capability exists via the HyperTransport pathway for one chip to “talk” to another chip or device at a
faster speed and with greater data throughput.

We knew that HyperTransport Technology would provide for a faster connection to system memory, the
GPU and the rest of the motherboard but back in the fall of 2003 we thought of the extra HyperTransport
link as a connection to another physical processor.

It didn’t dawn on us that the “extra” processor could be on the same die. While some will say “I knew
that” most didn’t pick up on it.
AMD have the added punch of being able to drop their dual core Opteron processors into existing 940-
pin sockets. This upgrade path is extremely favorable as all it will require is a processor swap and,
perhaps, a BIOS update.

Intel are continuing with their Pentium 4 cores by releasing two flavors codenamed Paxville and
Dempsey. The codenames will very likely change once the marketing department gets their hands on it
as “Introducing the new Dempsey” has a very lackluster ring to it.

MAC orientated Think Secret posted IBM plans on the PowerPC 970MP codenamed Antares and
rumored to clock in at 3GHz with a 1GHz EI (Elastic Interface) bus.

The horses are now in the paddock. AMD, INTEL and MAC loyalists are beginning to group at the fence
to eye up their favorite and the competition. The post parade is still a ways off and with post time now
set at mid-2005 it’s anybody’s guess who will be out of the gate first.

Why dual core?

Why the shift to dual core and how will this impact the gigahertz performance race? Who or what will
dual core processing benefit and will it be sought after by enthusiasts or left buried deep inside the dark
recesses of server rooms?

The broad brush paints a processor as a device that executes a series of instructions to tell it what to do
which, in turn, tells everything else it interacts with what to do. The faster it can do this the better.
“Faster” can be directly related to clock speed but don’t make the mistake of thinking that INTEL’s higher
clock speeds make it “faster” than AMD.

Both AMD and INTEL scaled up the clock speeds of their processors in a very short amount of time but
have recently slowed the curve. AMD moved from the 1GHz “Thunderbird” to the Athlon64 FX53 in In a
little less than 4 years which is impressive considering from 1997 until 2000 the K6 processor family saw
a mere 4-500 MHz clock speed increase.

It is the flattening of the clock speed curve that some are reasoning why a shift to dual core. Some have
surmised that AMD and INTEL have hit clock speed walls and another route is being taken to continue
the performance curve and stay top of mind with new product releases. The problem with winding up
clock speeds is heat. At present the processor engine can operate at only so much RPM before the
engine will seize. Heat is the enemy of any processor and high clock speeds mean high heat and that
means errors. A Windows PC running at 10GHz isn’t much good if it can’t make it past booting up before
crashing.
That heat comes from power. It takes a lot of juice to crank up a processor to high clock speeds and a
processor with that much electricity running around the die is prone to noise. It’s not audible noise like a
high RPM cooling fan but electrical noise otherwise akin to interference. The pathways on a processor
are microscopically close together. The more power that runs through these pathways due to the
requirement of higher clock speeds means that there will be a small amount of electrical radiation from
one pathway to the next. That leakage could corrupt the data in another pathway. Corrupted data means
errors which means a program could get cranky.

Think of it like a hot element on a stove. A hand can be placed fairly close with the burner on low. Turn
the burner up to high and it get’s pretty uncomfortable to keep a hand at the same distance it was when
the burner was on low. It may even burn a hand. The radiated heat from the burner “corrupts” the hand
resulting in a burn. In a processor the thermal heat is an issue but it’s also the electrical noise like a
radio station that isn’t quite tuned in. The data is “dirty” and the song isn’t clear enough to understand.
Dual Core Processing: Over-simplified, demystified and
explained.
Posted by MediaMan
Thursday, Sep 9th, 2004 at 12:42 am in Articles

Are two cores better than one?

There will most likely be three terms that come up to fuel the dual core debate; pipeline, cache and bus.

This is the most basic of explanations of what a processor pipeline is. First the data instruction set is
needed.

A processor loads instructions into the pipeline. Think of the pipeline like a conveyor belt. The data is
processed sequentially one after another.
The AMD processor pipeline is shorter than the INTEL processor pipeline and this is one of the reasons
why AMD runs at a lower clock speed.

Pipelining, like most things in life, is good in moderation. Making a processor’s pipeline too short causes
a longer minimum clock period which hinders the manufacturer’s ability to ramp up the clock speed.
Making the pipeline very long allows faster clock speeds however it also increases the cost of stalls and
flushes which negatively affects performance and also increases the amount of resources required to
pipeline the processor.

This is discussed in-depth in Icrontic’s Pipelining Explained article.

A shorter pipeline means that more work has to be done in the pipeline per clock cycle thus the clock
speed cannot be as high compared to a processor with a longer pipeline. However, with a shorter
pipeline, the data gets through it faster thus balancing the equation. This is one of the reasons why an
AMD processor can compete with higher clocked INTEL processors.
Data that that is continually used in preparation for the pipeline is stored in the processor’s cache and a
processor is smart enough to anticipate what data it may require.

If the processor needs to reach outside of the cache then it does so through the bus to system RAM.
Now remember that the processor cache is running at the same clock speed as the processor itself. If it
is a 2 GHz processor then the speed limit on the highway between cache and the rest of the processor
is 2GHz. If the processor has to reach out through the bus to main system memory then it must slow
down to that bus speed. A bus speed of 400 MHz is five times slower than the 2 GHz example.
In layman’s terms think of the processor as a carpenter. The carpenter’s truck is system memory and
the cache are the tools he’s packed into the house for the job. The carpenter has anticipated what tools
he may need to do the job. If the tool is not at hand then he must go back to the truck to get the right
tool thus slowing down the job at hand.

Putting it all together

Two pairs of hands make the work go faster. This is quite true in computers with dual processors
especially with SMP (Symmetric Multiprocessing) software. Not all software is SMP aware. In fact only a
small percentage of it is. SMP capability is something that must be written into the code. The program
must know that it can utilize two processors to complete processes simultaneously. This is known as
multithreading.

A dual core processor is between a single core processor and a dual processor system for architecture.
A dual core processor has two cores but will share some of the other hardware like the memory
controller and bus. A dual processor system has completely separate hardware and shares nothing with
the other processor.

A dual core processor won’t be twice as fast as a single core processor nor will it be as fast as a dual
processor system.

It will fall somewhere in the middle but there are going to be specific advantages.

There will be two pipelines and that means there can be two sets of instructions being carried out
simultaneously.
There will also be two processor caches to keep more of the necessary “tools” or data on the processor
die for faster access.

The trick will be the bus. If everyone wants on the bus at the same time then there will be the Keystone
Cops comedy of errors as everyone tries to squeeze through the door at the same time. The two
processor cores have to be designed to be smart enough to “wait” for the other to finish accessing the
bus.

Now all of this is happening at the nanosecond level so don’t think there’s time for a coffee. Nanosecond
wait states means there’s not even enough time to THINK about thinking about having a coffee.

Dual Core Processing: Over-simplified, demystified and


explained.
Posted by MediaMan
Thursday, Sep 9th, 2004 at 12:42 am in Articles

To SMP or not to SMP?

The processor engineers have probably already thought about tackling the SMP situation. What good is
a dual core processor if the software only recognizes and then uses only one of the cores? The majority
of software is not written to utilize multithreading at present. This breaks open a whole new can of
worms in concepts of parallel computing.

Intel’s Hyper-Threading is a single processor logical variation of dual core processors. AMD has just
taken it one step further with two physical cores on one processor die. Could AMD’s engineers have
cracked the hardware problem of a dual core processor and load balancing a program that isn’t written
for multithreading?

This is where dual core processors could fall short of expectations for mainstream users. If the software
cannot “see” the second processor then it will not benefit from it. Programs, such as Adobe Photoshop,
are SMP aware and are much faster on a dual processor system. There is no doubt that a program like
Photoshop will be much faster on a dual core system than its single core counterpart. The majority of
operating systems do recognize and support at least two processors. There is some load balancing of
non-SMP applications but not as efficiently as those written for multithreading.

The bottom line…for now

The benefit will come for users who multitask. As in a dual processor system there is a second
processor core to share the load either in balanced form or by itself. If one processor is busy burning a
DVD then the second is available to, I don’t know, bake bread. The point is there are now two pairs of
processor hands to execute multiple tasks simultaneously.

For the home enthusiast it mean less processor hiccups while playing DOOM III and, at the same time,
burning a DVD or listening to music.

Dual core processors brings a whole new twist to server environments. Dual or quad servers based on
the 940-pin Opteron processor may be on the road to some staggering performance results. AMD
recently demonstrated a 4-socket HP ProLiant DL585 server powered by 4 dual core Opteron
processors. Think about it. That’s like 8 processors for the price of four. It boggles the mind to think of
dual core on an 8-way system.

For the processor manufacturer dual core means a less expensive route to producing a new product
that continues the performance curve. The PR Rating numbers will be interesting. A dual core Opteron
that has two 2.4 GHz cores won’t be classified as a 3800+, for example, or twice that at a 7600+. Since
AMD dual core processors are going to be released in the 940-pin flavor first then it will be an FX. Most
likely the FX-57 which brings up the question of “where’d FX-55 go?”

Nevertheless there will be the performance increase and getting the consumers head wrapped around
dual core as better will be a challenge. The public believes that two processors are better than one but
also expensive. There are two processors (or more) to buy, a multi-processor motherboard, special
RAM and so on. With dual core processor technology there isn’t the added cost of a second physical
processor. The manufacturing process is very close to single core cost so, it is hoped, that the dual core
processor won’t have a shocking sticker price. It will, obviously, be more as the newest and fastest
always does cost more but it has to be less than the total of two comparable Opteron processors.

Dual core processors will also be hard to slot into the gigahertz realm of public comprehension. Does
“Two 2.4 GHz cores” sound slower or faster than the same processor described as a “3.6 GHz
comparable”? It’s for certain that the two core clock speeds won’t be combined for a gigahertz rating but
a comparable gigahertz rating will be assigned for those still stuck comparing which number is bigger in
the gigahertz wars.

Bottom line it’s what we’ve been saying for a year now. It’s the mushroom effect. For AMD it isn’t so
much about do it faster….it’s about do more of it faster.

AMD must be feeling smug by now because many had foretold of the end of the 940-pin era for the
desktop and workstation. Opteron indeed is alive and well for the server but it will again be heard
roaring in the enthusiast and desktop market.

You might also like