From owner-freebsd-ports@FreeBSD.ORG Sun Oct 19 14:56:41 2008 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B6450106568B for ; Sun, 19 Oct 2008 14:56:41 +0000 (UTC) (envelope-from eitanadlerlist@gmail.com) Received: from rv-out-0506.google.com (rv-out-0506.google.com [209.85.198.224]) by mx1.freebsd.org (Postfix) with ESMTP id 83C388FC19 for ; Sun, 19 Oct 2008 14:56:41 +0000 (UTC) (envelope-from eitanadlerlist@gmail.com) Received: by rv-out-0506.google.com with SMTP id b25so1218396rvf.43 for ; Sun, 19 Oct 2008 07:56:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:user-agent :mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:openpgp:content-type:content-transfer-encoding :from; bh=PSfSmFHBh5ft6eTifV36CwU6nomjI/7AsalaKIBRk6c=; b=rozPkeFm6O+BKS9KTCWNFvKD0z0GgX4e91CYQoVvqj7JU10OQM69l4z8P4DYc7PyE+ pyVf1CCUUXG0eBq96NHS4ICFBgYtcUYp1qeZsvJJZGBLWs201Kg2VY8PAZEPIQzdn46B 53RrKoTVdHkQQ249+Toq+5hXfpFjoSi6LgFLk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:user-agent:mime-version:to:cc:subject:references :in-reply-to:x-enigmail-version:openpgp:content-type :content-transfer-encoding:from; b=av7iCV4Aws3w6c14s/L147MGKx1CMQB4CpJ4CEQwtZN3EAl982sKJL6409Adi1kbpm 6+kWEfP1SS0U7+NBADKKydFq9jLChZV83zCR2f+PbRVsOC7yL8EwFGPP/2b4ll+himKN UHbIQZ/3oix4o7Z+/NctSKX8TJTA92aV3JQfw= Received: by 10.140.127.13 with SMTP id z13mr4104883rvc.194.1224428201005; Sun, 19 Oct 2008 07:56:41 -0700 (PDT) Received: from ?192.168.1.101? (ool-182d26f3.dyn.optonline.net [24.45.38.243]) by mx.google.com with ESMTPS id b39sm9212963rvf.0.2008.10.19.07.56.38 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sun, 19 Oct 2008 07:56:39 -0700 (PDT) Message-ID: <48FB4A9C.9090908@gmail.com> Date: Sun, 19 Oct 2008 10:56:28 -0400 User-Agent: Mozilla (X11; U; FreeBSD i386; en-US; ) Gecko Thunderbird Mnenhy/0.7.5.666 MIME-Version: 1.0 To: Jeremy Chadwick References: <48FB344E.9040904@gmail.com> <20081019133934.GA77293@icarus.home.lan> In-Reply-To: <20081019133934.GA77293@icarus.home.lan> X-Enigmail-Version: 0.95.7 OpenPGP: id=E9C2CCD1; url=pgp.mit.edu Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit From: Eitan Adler Cc: freebsd-ports@freebsd.org Subject: Re: speed up ports install X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 19 Oct 2008 14:56:41 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jeremy Chadwick wrote: > 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 > > > > <"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......> In my case the initial fork would only happen once and the large file would be a race between make-fetch-recursive and make-fetch. this is not a problem. > > 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. > - -- GNU Key fingerptrint: 2E13 BC16 5F54 0FBD 62ED 42B6 B65F 24AB E9C2 CCD1 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (FreeBSD) iEYEARECAAYFAkj7SpwACgkQtl8kq+nCzNEGRgCfc8t3LFfCD5pH+MizOX0U/+l+ QdsAn1qfFxLKFx0W0k8MQxWe//fRdsda =8mDL -----END PGP SIGNATURE-----