std.benchmark ready for review. Manager sought after

Manfred Nowak svv1999 at hotmail.com
Mon Apr 9 11:26:38 PDT 2012


Andrei Alexandrescu wrote:

>> For example by running more than one instance of the benchmarked
>> program in paralell and use the thereby gathered statistical 
>> routines to spread T into the additiv components A, Q and N.

> I disagree with running two benchmarks in parallel because that
> exposes them to even more noise (scheduling, CPU count, current
> machine load etc).

I did not mean to run two or more benchmarks in parallel but only 
more instances of the benchmarked program _without_ the environment 
supplied by the benchmakr. Of course may there be more noise. But if 
so, that noise is dependent on the additional running instances and 
to nothing else.

Now let T(n) be the time needed to run n instances in parallel on a 
single processor. According to your definition and your remark above:

§   T(n) = n*A + Q + N + P(n)

where P(n)>=0 and P(1)==0 is the additional noise with which the 
benchmarked program disturbs itself.

Please observe that Q and N eliminate themselves on subtraction:
§  T(2) - T(1) = A + P(2) - P(1)
§  T(3) - T(2) = A + P(3) - P(2)
...

P(n+1)-P(n) measures the sensitivity of the benchmarked program to 
its one noise. As you wrote yourself its value should be close to 
zero until the machine is close to falling flat.


> I don't understand the part of the sentence starting with "...use
> the thereby...", I'd be grateful if you elaborated. 

Ohh..., an unrecognized deletion. I have written:
| use the thereby gathered _data to feed_ statistical routines to
| spread T
as elaborated above.

-manfred


More information about the Digitalmars-d mailing list