4

I have an AMD A6-3500 three-core CPU. AMD System Monitor shows each core with a maximum 2100 MHz. This also shows in AMD OverDrive.

Does this processor run at the speed 3*2100 MHz?

AMD System monitor showing 2100*3 MHz

Edit

Can I say that I have got a 6.3 GHz processor?

8
  • No, but you could say you have a 6.3 GHz* processor. ;)
    – rob
    May 13, 2012 at 6:17
  • *3 cores @ 2.1 GHz per core
    – rob
    May 13, 2012 at 6:18
  • You can't say that you have 6,3GHz processor if it runs at 2,1GHz. Even if there is 3 cores running at 2,1GHz it does not change frequency (not for one and not for overall as there is not such thing as overall frequency, it's parallel not serial). In theory it may do things as fast as one 6,3GHz (serial) core but still in your case there is 3 cores (parallel) running at 2,1GHz frequency. May 13, 2012 at 11:04
  • That's why you include an asterisk and wink when you say it.
    – rob
    May 14, 2012 at 2:39
  • 2
    Say you have three cars all going 50 miles per hour. Nothing is going 150 miles per hour. It does not make sense to add speeds this way. Jul 17, 2016 at 4:23

4 Answers 4

20

Multi-core CPU:s can perform several actions per clock cycle, loosely speaking. The clock speed is measured in Hz, and it is not correct to say that it is tripled just because you have more cores.

Everyone loves car analogies! A three-file motorway as compared to a one-file motorway with the same speed limit will not predictably enable you to arrive at your destination three times faster.

If you run perfectly parallelizable processes, then a three-core CPU can effectively perform operations at three times the capacity of a single-core CPU at the same clock speed ("all motorway lanes filled").

However, subsequent CPU operations often depend on previous ones and thus can not be run in parallel. With a perfectly linear process, you will only be able to do calculations on a single core at a time, and thus effectively be identical in processing speed to a single-core CPU.

Therefore it is very incorrect to say that 3-core CPU @ 2.1GHZ = 6.3GHz.

For further information, see


EDIT to address your question edit. Quoting myself from above:

Therefore it is very incorrect to say that 3-core CPU @ 2.1GHZ = 6.3GHz.

No, you do not have a 6.3GHz CPU. It would perhaps be something that someone without technical knowledge in a marketing department that tries to sell you new hardware would say, but it is false.

2
  • +1 For your answer :) I've changed the question slightly, please read it !
    – Sourav
    May 13, 2012 at 3:56
  • @Daniel Anderson What about threads? Do all the threads execute at the same clock rate? If I have 2 Core 4 threads 2GHz processor, do all the 4 threads will execute at 2GHz? Mar 14, 2020 at 21:01
2

Your processor has 3 cores, each running in parallel at 2.1Ghz currently

(as per the specs, it can be variable from 2.1-2.4Ghz)

7
  • They why does is hows core1-2100MHz, core2-2100MHz, core3-2100MHz :(
    – Sourav
    May 12, 2012 at 7:53
  • 1
    @Sourav Because there's nothing for your CPU to do right now. May 12, 2012 at 8:23
  • +1 For your answer :) I've changed the question slightly, please read it !
    – Sourav
    May 13, 2012 at 3:56
  • @Sourav You can say that you have a 6.3 GHz processor only if you are running what is known as an "embarrasingly parallel" problem. If you are running 3 entirely independant tasks on the 3 cores, then yes, the effective speed can be said to be equivalent to a 6.3GHz processor. But such tasks are rare and usually you wont encounter them
    – Akash
    May 13, 2012 at 4:02
  • 3
    @Sourav To be clear this (embarrassingly parallel) is three separate serial tasks (each doing it's own operation that does not depend on other tasks) running at same time and therefore called parallel. That however does not change core frequency to anything, processing could be as fast as with one 6,3GHz serial task but frequency is still same. Speed is not frequency and frequency is not speed. May 13, 2012 at 11:14
2

I will boldly go against the consensus here and argue it is perfectly fine to say the frequency has tripled. Here is why.

Frequency is not a CPU specification. It is a physical quantity, the reciprocal of time, and it can be used to express a large number of variables. The number of clock ticks per unit time, how many decimals of pi it can calculate per unit time, how often it needs replacement and its angular velocity when you throw the processor around like a frisbee, are all frequencies of your CPU. The unit Hz simply counts the number of events per second, but doesn't specify what event you are counting.

In the context of CPUs, 'frequency' usually means clock rate. This value is not increased by additional cores. Counting the grand total of clock ticks per second in every core, however, will get you a number three times as large as the clock rate. Likewise, putting a second noisy clock up on the wall does not make time go twice as fast, yet I can hear twice as many ticks per second as before.

What if two out of three cores are idle and the other one barely has enough to do to keep the computer running? Most clock cycles will pass without the processor doing work. In your screenshot, it's effectively doing about 84 million operations a second. That's also a frequency.

When bragging about your hardware, these values aren't particularly useful. But even when talking hard numbers and specifications, 'frequency' can mean a number of things: CPU cycles per unit time, front side bus speed, floating point operations per second...

To be clear, clock rate multiplied by number of cores is not the frequency by which 'we' measure the speed of a processor, but to say it's wrong is something else entirely.

2
  • As you say: "In the context of CPUs, 'frequency' usually means clock rate.". By saying that the CPU is 6.3GHz, one has redefined the implied measured quantity "without telling". To say "It can perform operations at 6.3GHz with perfectly concurrent processes" is correct, but it is "marketing speak" (more correctly, marketing speak would probably skip mentioning the re-definition at all). Your last statement boils down to defining "right" and "wrong", and in this context, without specifying further, I would say "6.3GHz" is "wrong", since the question in itself has defined the context for "Hz". May 16, 2012 at 10:34
  • Note: "I would say '6.3GHz' is "wrong" - this is semantics and perhaps philosophy, and open to interpretation on an individual basis, and not within the scope of a comment field on this site :-) . May 16, 2012 at 10:36
1

Akash answer is correct but I am willing to make it more clear.

Speed is not same as frequency, frequency is not speed and speed is not frequency.

You are asking about speed but talking about MHz which is frequency unit. Actual speed depends on how each core processes instructions, do they need to wait for each other and do they use common memory or does all cores have reserved cache. You can make use of all cycles only if there is three separate threads so that all cores process instructions at same time.

Of course, if you are only counting overall cycles, you could say that your CPU speed is
3 (cores) * 2100 MHz (frequency for each) = 6 300 000 000 Hz
which means there is overall 6 300 000 000 cycles per second.

UPDATE:

You can't say you have 6,3GHz CPU but you can say that in theory you processor can go 6300000000 cycles per second but frequency stays at 2,1GHz for individual cores (2100000000 cycles per secod). You need to say that you have three 2,1GHz processors (or cores as often when speaking about processor it means separate individual units) if one core runs at 2,1GHz and you got three of them.

If you say that you have 6,3GHz CPU it could do 6300000000 cycles/second for single thread and that is not case with your 3*2,1GHz CPU.

10
  • +1 For your answer :) I've changed the question slightly, please read it !
    – Sourav
    May 13, 2012 at 3:56
  • Updated answer to reflect your changes to question. May 13, 2012 at 10:15
  • @Sampo Instructions and cycles are not interchangeable... (last sentence)
    – Bob
    May 14, 2012 at 0:08
  • My mistake, thanks for your review, small note for future reference: one instruction can take more than one cycle as well as modern CPU's can handle many instructions per one cycle. Google propably knows something about cpu architectures. May 14, 2012 at 0:50
  • There are not 6300000000 cycles per second. There are 2100000000 cycles per second. Three cars going 50 miles per hour don't make anything going 150 miles per hour. Jul 31, 2012 at 8:46

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .