Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Oct 2008 06:39:34 -0700
From:      Jeremy Chadwick <koitsu@FreeBSD.org>
To:        Eitan Adler <eitanadlerlist@gmail.com>
Cc:        freebsd-ports@freebsd.org
Subject:   Re: speed up ports install
Message-ID:  <20081019133934.GA77293@icarus.home.lan>
In-Reply-To: <48FB344E.9040904@gmail.com>
References:  <48FB344E.9040904@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Oct 19, 2008 at 09:21:18AM -0400, Eitan Adler wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> I have a simple idea to make use the threads without any possibility of
> conflicts.  I am sure there will be someone to point out a negative, but
> I don't see any.
> When you do "make install" launch a "make fetch-recursive" thread at the
> same time.  That way you don't need to wait for the files to
> install->fetch the next one->install it->fetch the next one...
> For those who don't want that you could get the old behavior with "make
> onlyinstall".  I currently do this with a "make" wrapper script and I
> find installation to be faster.

What about this scenario?

# cd /usr/ports/friendly/apes
# make install

<forked copy of 'make fetch-recursive' is launched in background>
<fetch for friendly/apes finishes, "make" starts>
<"make" finds a dependency which isn't installed, friendly/dogs>
<"make" begins to build friendly/dogs, but friendly/dogs is still being
  downloaded from fetch-recursive, because the source is very large;
  say, 30MBytes>
<"make" for friendly/dogs forks another fetch-recursive......>

What I'm trying to say is, there would need to be mechanisms put in
place to cause the entire build process to block (halt/pause) until the
backgrounded fetch-recursive has completed.

-- 
| Jeremy Chadwick                                jdc at parodius.com |
| Parodius Networking                       http://www.parodius.com/ |
| UNIX Systems Administrator                  Mountain View, CA, USA |
| Making life hard for others since 1977.              PGP: 4BD6C0CB |




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