A discrete unit of measurement of execution duration on sequential computer processors. Each clock cycle includes the atomic execution of one step* of an assembly language instruction, and, in pipelining systems, complementary steps of adjacent instructions. The speed of a processor is usually expressed as cycles per second or hertz although FLOPs are preferred for very fast or very parallel architectures.

The execution speed of actual programs is expressed in clock cycles whereas the speed of algorithms is expressed using complexity bounds (the most popular being big-O). Moore's Law ensures that clock cycles remain more accurate than flat seconds for benchmarking and profiling on code which is even slightly portable. This presents a friction in real-time systems where the engineer is expected to fulfill a requirement specified in seconds using an algorithm given in complexity running on a machine at some number of clock cycles.


* ariels pointed out that a full instruction is only executed on classical RISC processors.

Log in or register to write something here or to contact authors.