Re: 4BSD process starvation during I/O

From: Kris Kennaway <kris_at_obsecurity.org>
Date: Thu, 24 Nov 2005 01:01:44 -0500
On Thu, Nov 24, 2005 at 08:35:03AM +0800, David Xu wrote:
> Kris Kennaway wrote:
> 
> >On Thu, Nov 24, 2005 at 07:52:30AM +0800, David Xu wrote:
> > 
> >
> >>Kris Kennaway wrote:
> >>
> >>   
> >>
> >>>Perhaps this can be tweaked.
> >>>
> >>>Kris
> >>>
> >>>P.S. Please, no responses about how maybe someone could write a new
> >>>scheduler that doesn't have this property.
> >>>
> >>>
> >>>
> >>>
> >>>     
> >>>
> >>Can you try it again with FULL_PREEMPTION is turned on ?
> >>   
> >>
> >
> >Didn't really make a difference:
> >
> > 
> >
> This might only can be fixed when msleep no longer explicitly fiddles
> thread priority, let scheduler fully control it.

ULE doesn't seem to suffer from the "variance" problem nearly as
badly on the simultaneous dd writing test I detailed earlier:

ULE
268435456 bytes transferred in 6.738002 secs (39839028 bytes/sec)
268435456 bytes transferred in 6.755917 secs (39733385 bytes/sec)
268435456 bytes transferred in 6.828591 secs (39310518 bytes/sec)
268435456 bytes transferred in 7.173220 secs (37421891 bytes/sec)
268435456 bytes transferred in 7.359424 secs (36475064 bytes/sec)
268435456 bytes transferred in 7.452125 secs (36021330 bytes/sec)
268435456 bytes transferred in 7.657969 secs (35053087 bytes/sec)
268435456 bytes transferred in 7.848142 secs (34203695 bytes/sec)
268435456 bytes transferred in 8.061658 secs (33297798 bytes/sec)
268435456 bytes transferred in 8.159963 secs (32896652 bytes/sec)
268435456 bytes transferred in 8.176940 secs (32828351 bytes/sec)
268435456 bytes transferred in 8.184902 secs (32796416 bytes/sec)

4BSD
268435456 bytes transferred in 1.860367 secs (144291681 bytes/sec)
268435456 bytes transferred in 1.885677 secs (142354961 bytes/sec)
268435456 bytes transferred in 1.983243 secs (135351757 bytes/sec)
268435456 bytes transferred in 3.409261 secs (78737139 bytes/sec)
268435456 bytes transferred in 3.762066 secs (71353204 bytes/sec)
268435456 bytes transferred in 3.910402 secs (68646510 bytes/sec)
268435456 bytes transferred in 5.086984 secs (52769079 bytes/sec)
268435456 bytes transferred in 5.566311 secs (48225018 bytes/sec)
268435456 bytes transferred in 5.816347 secs (46151897 bytes/sec)
268435456 bytes transferred in 6.818567 secs (39368309 bytes/sec)
268435456 bytes transferred in 7.375191 secs (36397085 bytes/sec)
268435456 bytes transferred in 7.568077 secs (35469440 bytes/sec)

Performance is lower on ULE though.

Kris
Received on Thu Nov 24 2005 - 05:01:59 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:48 UTC