[SATLUG] comparison of processors (OT)

Travis H. solinym at gmail.com
Wed Aug 3 00:09:06 CDT 2005


> You may find the timings are much less dependent on the numbers
> being multiplied.

> >On 7/30/05, Travis H. <solinym at gmail.com> wrote:
> >> > >> Back in the i386 days, multiplication took a variable amount of time,

Hence the phrase "Back in the i386 days".

However, there are still many [sequences of] instructions that take a
variable length of time*, depending on surrounding instructions,
branch prediction failure or success, caching size and structure,
prefetch, TLB usage, virtual memory page-in, pipeline stalls, operand
location (register/memory), data dependencies, register renaming,
functional unit parallelism, and so on.  Asking for some number of
cycles for each instruction is a fundamentally naive question on
anything more complicated than a microcontroller, and multiplication
operand size is merely a convenient example of why that question is
broken.  Asking the minimum number of cycles is a better question, but
still not perfect.

[*] Especially on the x86, whose instruction set is so antique and
complicated (CISC-ish) that many instructions are themselves
implemented in microcode.

What a person normally means by his question is "which processor will
be faster at running my workload and by how much?", and the correct
answer is "it depends, run your workload on both and measure it". 
There is no simpler correct answer, and anyone who says differently is
has never taken a quantitative computer processor architecture course
or is trying to sell you something.

TANSTAAFL
-- 
http://www.lightconsulting.com/~travis/
GPG fingerprint: 50A1 15C5 A9DE 23B9 ED98 C93E 38E9 204A 94C2 641B


More information about the SATLUG mailing list