What is the technical term “clock speed” of a cpu

I often have heard people telling they have so and so clock speed. So what does this clock speed mean and does it determine the speed of a system? What is its significance?

-
Google search for "Clock speed" turns up a nice Wikipedia article en.wikipedia.org/wiki/Clock_rate as the first link. – Bon Gart Jul 8 '13 at 14:34
I'm amused by the apparent level of cognitive dissonance between the question and the answers. I couldn't come up with an answer that addressed the question without bringing in a bunch of technicals that are way over the top considering the op. – Frank Thomas Jul 8 '13 at 14:57
@FrankThomas I think that is the point, cpu's are a complex topic, the only thing we can do is try to hit the high points and show the OP some resources to learn more on their own. – Scott Chamberlain Jul 8 '13 at 15:36
@FrankThomas so could you mention the technicals? – DDR Jul 8 '13 at 15:39
I would have gotten into Clock Multiplier, and how you can calculate the actual speed of a CPU from its Clock speed and multiplier. simply put, my I7 2600 is a 100MHZ (clockspeed) chip with a 38x multiplier, yielding 3.8GHZ per core. – Frank Thomas Jul 8 '13 at 16:37

"Clock speed" is quite simply how often a timer (often a crystal oscillator) tells the CPU to "advance" or go forward.

That's it, and that's why comparing clock speeds of different processor architectures is next to useless when trying to gauge relative performance. Even within a particular architecture, different features that may be disabled on lower-end models and enabled on higher-end models can cause clock-speed to not be a good benchmark for comparison.

• Scalar Processors take one or several clock cycles to execute a single instruction.
• Superscalar Processors can execute multiple instructions in a single clock cycle.
• Processors with pipelining take many clock cycles to execute an instruction, but they can run multiple instructions at the same time in different "stages", which allow them to still hit about 1 instruction / clock cycle.
• Multi-core Processors have multiple discrete sub-units (cores) which can process instructions independently of each other, each with their own (L1) cache, but they share other processor-level components (L2 and L3 caches, Memory controller, System bus, etc.)

Most desktop processors these days are Multi-core pipelined scalar processors. Some Intel processors have over 17 stages in their pipeline (i.e., it may take up to 17 clock cycles from start to finish for a single instruction to execute).

If you want to get into more specifics behind the definition of "clock cycle", you have to first start asking more specific questions. If you asked "What does a 3rd-generation Intel Core processor do during a clock cycle?", then you could get mountains of information describing how that particular processor works and what it does (though such a question would not be suitable for this site, but it would be a great starting place for google or asking on forums).

-
I would say nearly all processors on the market nowadays can execute multiple instructions on a single clock pulse. Between pipelining and multi-core architecture there could be dozens of instructions in some phase of execution on any single pulse. – KeithS Jul 8 '13 at 15:38
@KeithS As I was intending the definition in the answer, multiple instructions in a single clock cycle would be a Superscalar CPU and not necessarily pipelined or multicore, though with a superscaller, pipelined, multicore processor you would indeed have many instructions concurrently executing. – Darth Android Jul 8 '13 at 16:05

The clock speed is how many "operations" per second a processor does.

Now I say "operations" not "instructions" because modern are CISC based which can take several cycles to perform one instruction.

The number of cycles a instruction could take can vary between processor families, that is why a slower clocked processor can out perform a higher clocked processor, it can do more work per cycle.

I highly reccomend the Podcast "Security Now!" they go over the basics of building a computer from the ground up and explain in depth how it all works.

I highly recommend listing to the listener feedback episodes too between the episodes, the go back over things people thought where confusing from last week and wrote in about.

-

Clock speed is a measure of how quickly a computer completes basic computations and operations. It is measured as a frequency in hertz (Hz), and most commonly refers to the speed of the computer's Central Processing Unit (CPU). While computer developers and users can refer to this term regarding CPU performance, this has fallen out of favor as CPUs have become more complex. The easiest ways to boost clock speed in a computer include upgrading components and "overclocking" a piece of hardware.

http://www.wisegeek.org/what-is-clock-speed.htm#slideshow

-

CPUs have, as their "heart", a quartz oscillator or other very precise timing mechanism called the CPU clock (not to be confused with the "system clock" that maintains the current time using a different system). This clock sends out pulses of voltage into the circuitry of the CPU, which, along with voltage on I/O circuits representing the bits of data to be processed, allows the computer to do its work. Each pulse allows one set of input bits to be processed into a set of output bits as the result of some operation.

The "clock speed", therefore, is a (very) rough measure of the rate at which the CPU can perform instructions. The higher the clock rate, the faster it can process. However, there are several physical limitations to this approach, not the least of which is the second law of thermodynamics which states that no system can be perfectly energy-efficient. Some of the energy input is lost as heat, and heat can very quickly cause the delicate circuitry of the CPU to swell and short-circuit, or in the extreme even melt down. There are also physical limits to the frequency at which you can vibrate the electrons in conductive materials; at some point you're trying to vibrate them faster than the electrons can physically jump between atoms. Lastly, there's a point of diminishing returns to making the CPU go faster, when other limits inherent in other components of the computer are maxed out. When the CPU is waiting for bits of data to be received from the hard disk or a network connection, it can't proceed with any instruction that needs them, and so

Instead, designers of modern CPUs have backed off the clock speed in favor of making a single clock pulse do more. More efficient "pipelines" to retrieve data needed for instructions, and now more cores built onto the same CPU chip (I believe the current gold standard for workstations is 8 cores), allow designers to multiply the work done by a single pulse and so continue to increase processing power in terms of instructions per second. However, this approach requires programmers to tap into the CPU's full potential by allowing their program to be executed by multiple cores simultaneously, and this "divide and conquer" design to the program can only take you so far in many cases. This is known as the "parallel problem", and is the Next Big Thing for CPU designers and language architects alike to solve.

-

CPU Clock Speed is measured in Hertz(Hz) and generally speaking a CPU running at 1 Hertz is processing an instruction in one line of assembly programming code in one second. By this metric, a CPU that is running at 2.13 Giga-Hertz(GHz) is capable of processing about 2,130,000,000 lines of code every second. If you have what's known as a Dual Core system that is running at 2.13 GHz, you have a machine that can process two instructions in the same time-frame, provided that either the program itself is designed with Multithreading capability, or you have two active programs running at the same time. Multithreading simply means that different calculations in a program can be delegated to run in parallel on a separate CPU if one is available.

Clock speed is the most common metric used by Advertisers.

-
I think the relation you state between clock speed and lines of code is invalid. And does not hold in general. – Dan D. Jul 8 '13 at 15:18