Re: RT sceduler patch (testing...)

Kurt Garloff (garloff@kg1.ping.de)
Fri, 2 Oct 1998 22:39:56 +0200


--r5Pyd7+fXNt84Ff3
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8bit

On Fri, Oct 02, 1998 at 10:07:09AM +0200, Hans Eric Sandström wrote:
> Result: Affects on non rt sceduling was not measuable by my (non
> scietific method). If anyone wants to they could calculate std.dev and
> try to interpolate the results. There might be a slight performance
> degradation, but the variance of the results are to big.
> ...

Sure?

> I did not warm up caches, so ignore first line (make -j 1) and I know I
> wrote 29 29 in the script.

Here are the results:
rt-patch (all lines but the first): 34 values used
User time: Mean: 810.697647059 +- 3.2574022123 (StdDev: 18.9937556021)
System time: Mean: 53.4855882353 +- 0.151610011461 (StdDev: 0.884030683604)

Non-rt-patch: 41 values used
User time: Mean: 797.34097561 +- 2.59335388377 (StdDev: 16.6055671094)
System time: Mean: 53.5709756098 +- 0.124807073008 (StdDev: 0.799155194184)

(Yes, the lines with indices 14 and 15 are twice in your output, as is 29,
but 28 is missing)
TCL-script to calc the results is appended.

If I didn't get anything wrong (it's some time since I learned how to use
statistics) the samples' user times are clearly different.

(t-test with error prob. of 1% => c=2.39; t=3.25 > c
=> The probability of getting results differing in spite of the samples
being the same is less than 1%. So we are almost sure that there is some
significant difference.)

The systems' time difference is not significant, BTW.

There could be another reason for that, but the results suggest that the
rt-patch introduces a small, but measurable performance decrease.
I like the idea of the rt queue, but your results don't encourage
introduction of Richard's patch into the kernel.

Are your results repeatable?

-- 
Kurt Garloff, Dortmund 
<K.Garloff@ping.de>
PGP key on http://student.physik.uni-dortmund.de/homepages/garloff

--r5Pyd7+fXNt84Ff3 Content-Type: text/plain; charset=us-ascii Content-Description: eval_times.tcl Content-Disposition: attachment; filename="eval_times.tcl"

#!/usr/bin/tclsh

proc calc_stat { n sx sx2 } { set stddev [expr sqrt(($sx2-$sx*$sx/$n)/($n-1))] puts "Mean: [expr $sx/$n] +- [expr $stddev/sqrt($n)] (StdDev: $stddev)" }

# main set utm 0 set utm2 0 set stm 0 set stm2 0 set n 0 while {![eof stdin]} { set line [gets stdin] if [regexp {([0-9\.]+)u[^ ]* ([0-9\.]+)s} "$line" dum ut st] { incr n #puts "$n: $ut u + $st s" set utm [expr $utm + $ut] set utm2 [expr $utm2 + $ut*$ut] set stm [expr $stm + $st] set stm2 [expr $stm2 + $st*$st] } } puts "$n values used" puts -nonewline " User time: " calc_stat $n $utm $utm2 puts -nonewline "System time: " calc_stat $n $stm $stm2

--r5Pyd7+fXNt84Ff3--

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/