Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 25 Jan 2003 19:48:06 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Jeff Roberson <jroberson@chesapeake.net>
Cc:        Steve Kargl <sgk@troutmask.apl.washington.edu>, Robert Watson <rwatson@FreeBSD.ORG>, Gary Jennejohn <garyj@jennejohn.org>, <arch@FreeBSD.ORG>
Subject:   Re: New scheduler (#3)
Message-ID:  <200301260348.h0Q3m65F024913@apollo.backplane.com>
References:   <20030125220945.L18109-100000@mail.chesapeake.net>

next in thread | previous in thread | raw e-mail | index | archive | help
:I'd be very interested in hearing a critique of the API.  There are a few
:things that I think are missing now.  For example, a sched_exec().  Also,
:I think sched_fork() should be a finer grained thing like:
:
:sched_fork_kse()
:sched_fork_kseg()
:sched_fork_td()
:sched_fork_proc()

   So far the API is sufficient for the fractional-fair-share I intend
   to implement later on.

   One thing I noticed was that the runq_*() procedures are in kern_switch.c
   when, in fact, they are only used by sched_*() functions (and in the
   workup I did of my own scheduler I didn't use them at all).  That *might*
   argue for moving them into sched_*() or into their own file.  I only
   hesitate because they are rather involved despite being sched_*() specific.

:I'm still not sure about the flip-flop that you're talking about.  The
:others should be very quick to fix.  I'll get a patched version going
:pretty quickly here.
:
:Thank you very much for the review matt.  This is the most thorough
:feedback I've received yet.
:
:Cheers,
:Jeff

    I think I misread that part of the code.  Ah, I see what happened.
    I misread the sched_setup() code.  I thought it was indexing into
    another cpu's kseq.

    This implies that either process ping-ponging is not a problem
    relative to the other issues, or that it is more subtle... perhaps
    an unstable ping pong occurs in the rescheduling code (since you
    reschedule every time the slice runs out).

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301260348.h0Q3m65F024913>