Messages in this thread | | | Date | Sun, 13 May 2012 23:29:28 +0530 | From | Raghavendra K T <> | Subject | Re: [PATCH RFC V8 0/17] Paravirtualized ticket spinlocks |
| |
On 05/07/2012 05:36 PM, Avi Kivity wrote: > On 05/07/2012 01:58 PM, Raghavendra K T wrote: >> On 05/07/2012 02:02 PM, Avi Kivity wrote: >>> On 05/07/2012 11:29 AM, Ingo Molnar wrote: >> (Less is better. Below is time elapsed in sec for x86_64_defconfig >> (3+3 runs)). >> >> BASE BASE+patch %improvement >> mean (sd) mean (sd) >> case 1x: 66.0566 (74.0304) 61.3233 (68.8299) 7.16552 >> case 2x: 1253.2 (1795.74) 131.606 (137.358) 89.4984 >> case 3x: 3431.04 (5297.26) 134.964 (149.861) 96.0664 >> > > You're calculating the improvement incorrectly. In the last case, it's > not 96%, rather it's 2400% (25x). Similarly the second case is about > 900% faster. >
speedup calculation is clear.
I think confusion for me was more because of the types of benchmarks.
I always did
|(patch - base)| * 100 / base
So, for (1) lesser is better sort of benchmarks, improvement calculation would be like
|(patched - base)| * 100/ patched e.g for kernbench,
suppose base = 150 sec patched = 100 sec improvement = 50 % ( = 33% degradation of base)
(2) for higher is better sort of benchmarks improvement calculation would be like
|(patched - base)| * 100 / base
for e.g say for pgbench/ ebizzy...
base = 100 tps (transactions per sec) patched = 150 tps
improvement = 50 % of pathched kernel ( OR 33 % degradation of base )
Is this is what generally done? just wanted to be on same page before publishing benchmark results, other than kernbench.
| |