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>