Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Dec 2012 22:12:10 +0800
From:      Buganini <buganini@gmail.com>
To:        Chris Rees <crees@freebsd.org>
Cc:        "freebsd-rc@freebsd.org" <freebsd-rc@freebsd.org>
Subject:   Re: Concurrent execution of rc-scripts with rcorder(8)
Message-ID:  <CAC_-zwee7EiwK9etxezxgZXqg6Rr272yB2hr24X7f-whW=6bYg@mail.gmail.com>
In-Reply-To: <CADLo83-qMBfDN=QD=Fa5vCrMb-e58D0LRNz7b%2BtNcYFGOXs_HA@mail.gmail.com>
References:  <20110821121509.GA27730@crane.none> <CADLo83_=jQoNK5dm4QWCLRWNRzu-NLZeAsxaqexm1hKXFpdh7g@mail.gmail.com> <20110823201859.GA78110@crane.none> <CADLo83-qMBfDN=QD=Fa5vCrMb-e58D0LRNz7b%2BtNcYFGOXs_HA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I've added an optional flag -q to switch of parallel execution, you will
need to put rcexecr_parallel="YES" into /etc/rc.conf to enable parallel
execution.

Buganini

2012/12/23 Chris Rees <crees@freebsd.org>

> Reawakening ancient thread.
>
> On 23 August 2011 21:18, kilian <kklimek@uos.de> wrote:
> > On Sun, Aug 21, 2011 at 02:54:15PM +0100, Chris Rees wrote:
> >> On 21 Aug 2011 13:39, "kilian" <kklimek@uos.de> wrote:
> >> >
> >> > Hello,
> >> >
> >> > the idea to start services concurrently during boot isn't new and the
> >> > question why FreeBSD doesn't do it has popped up on the forum and
> >> > mailing list occasionally. So, why not give it a shot?
> >> >
> >> > rcorder(8) is normally used during boot to bring the rc-scripts into a
> >> > particular order, so when they are executed linearly by /etc/rc, all
> >> > constraints will be satisfied. I modified rcorder(8) to enable it to
> >> > run rc-scripts concurrently, while keeping track of the constraints as
> >> > rc-scripts start and finish. You can find the code at
> >> > https://github.com/kil/rcorder. As it works now, it will fall back
> to the
> >> > current mode of execution if anything goes wrong. So, if worst comes
> to
> >> > worst, booting takes a bit longer.
> >> >
> >> > If you feel brave, give it a try (Actually, not too much bravery is
> >> needed:
> >> > on all boots of my machine it worked perfectly every time.)
> >> >
> >> > I haven't done any measurements yet on how large the speedup is, but
> >> booting
> >> > feels a bit faster with it. Also, there probably is room for
> improvement.
> >> > Any ideas and feedback are very welcome!
> >> >
> >> > -kilian
> >> >
> >>
> >> I might suggest moving this to rc@. I'll try it later, looks
> interesting.
> >>
> >> Chris
> >
> > For anyone who is interested, updated the README[1] with some numbers,
> > detailing the influence on booting time.
>
> Hi Kilian, Buganini,
>
> I've been looking over both of your rc implementations, and they both
> seem to do the job well.  The main reservation I have for rcexecr [1]
> is that it is not optional.  Whether that is a problem is up for
> debate, but I think that it is important at least for the mid term to
> have a rc_parallel option; rc dependencies are funny things, and it
> would be absolutely unacceptable to have strange failures on
> production boxes.  Every rc script would have to be reviewed in time
> (including ports), to ensure that they fitted in properly.
>
> Chris
>
> [1] https://github.com/buganini/rcexecr/
>
> [2] https://github.com/kil/rcorder
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAC_-zwee7EiwK9etxezxgZXqg6Rr272yB2hr24X7f-whW=6bYg>