4BSD process starvation during I/O

Kris Kennaway kris at obsecurity.org
Thu Nov 24 06:01:59 GMT 2005


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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20051124/4b1a54bf/attachment.bin


More information about the freebsd-current mailing list