Re: Measurement Accuracy & ANOVA



On Mon, 1 Sep 2008 06:25:16 -0700 (PDT), Alan
<jalanthomas@xxxxxxxxxxx> wrote:


Would someone provide background and explain "the principle of
scaling up by 1000"?



If doing something once is too quick to get a good measure, try doing
it 5 times, or 10 times, or 1000 times. You might look for Byte
Magazine from 20 years ago for examples of simple computer testing.

From the benchmarks that I used to read, the times for *single* sets
of executions were computed directly from known cycle times and
the number of instructions that had to be executed. Direct
measurement of Disk-seeks, etc., where the hardware performance
would depend on varying physical factors, were done by looking at the
average time for numerous seeks. (The disk head was 'tossed' towards
in or out, towards the right address; then it needed to read a few
sectors to home in on the correct one.)

"Pipes" and "caches" and other optimizations -- in the hardware
and in the compiler -- reduce the worth of those direct measures,
unless you know enough about them to take them into account.

If you wanted to know how long it will take for one "Do-loop", you
could time a single pass, or compute the duration of all the
instructions. They should come out about the same, on a PC from
1988. Or time 1000 passes. That also comes out as predicted,
unless the "smart" compiler says that, "Okay, nothing is being
done in that loop that has any variables that are used later, so I
will delete the whole loop."

For a practical benchmark, you need something that looks like a
practical application, and that consists of more than one try.
It probably should also compete with other threads/processes
that are active on computers today.

--
Rich Ulrich
.



Relevant Pages

  • Re: Implement memcmp function with help from gccs inline asm
    ... >> number of iterations by duplicating the loop body. ... > due to how the C compiler interprets unsigned vs signed integers. ... test ecx, ecx ... My version of this code has 2 fewer instructions in the loop body. ...
    (comp.lang.asm.x86)
  • Re: LOOP - Why so slow?
    ... of complicated ones with multiple side effects, so "loop" wasn't ... loop instructions that branch forward). ... This is no big deal for a compiler. ... BS that Intel made up. ...
    (comp.lang.asm.x86)
  • Re: Seymour remembered
    ... > manage to get a loop into this buffer, ... I wasn't certain from the article which Fortran compiler they were ... Instructions were 15, 30, or 60 bits long so theoretically the stack ...
    (comp.lang.fortran)
  • Re: Automatically transform or expand do loop in a subroutine
    ... Compaq Visual Fortran. ... CONSTANT integer 'd' in its argument list when the compiler is doing ... loop length. ... instructions on installing the compiler as well. ...
    (comp.lang.fortran)
  • Re: Letter to US Sen. Byron Dorgan re unpaid overtime
    ... >> both less efficient and less safe than the Fortran and Basic standard. ... >> The C for loop is actually trying to do what a do loop does. ... sloppy thinking that results from confusing a programming language ... > I do not believe that you are capable of writing a conforming C compiler. ...
    (comp.programming)