From owner-freebsd-ports@FreeBSD.ORG Sun Dec 2 08:13:08 2012 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 4B6D0CF for ; Sun, 2 Dec 2012 08:13:08 +0000 (UTC) (envelope-from m.seaman@infracaninophile.co.uk) Received: from smtp.infracaninophile.co.uk (smtp6.infracaninophile.co.uk [IPv6:2001:8b0:151:1:3cd3:cd67:fafa:3d78]) by mx1.freebsd.org (Postfix) with ESMTP id B324C8FC0C for ; Sun, 2 Dec 2012 08:13:07 +0000 (UTC) Received: from seedling.black-earth.co.uk (seedling.black-earth.co.uk [81.2.117.99]) (authenticated bits=0) by smtp.infracaninophile.co.uk (8.14.5/8.14.5) with ESMTP id qB28CqYo023297 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Sun, 2 Dec 2012 08:12:53 GMT (envelope-from m.seaman@infracaninophile.co.uk) DKIM-Filter: OpenDKIM Filter v2.7.1 smtp.infracaninophile.co.uk qB28CqYo023297 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=infracaninophile.co.uk; s=201001-infracaninophile; t=1354435973; bh=PzDZU+WUgtU56Tt1KNLbLrifCta/3gpcynCGAYzxmno=; h=Date:From:To:CC:Subject:References:In-Reply-To; z=Date:=20Sun,=2002=20Dec=202012=2008:12:45=20+0000|From:=20Matthew =20Seaman=20|To:=20Kimmo=20Paasia la=20|CC:=20Kevin=20Oberman=20,=20Eitan=20Adler=20,=20=0D=0A=20Miroslav =20Lachman=20<000.fbsd@quip.cz>,=0D=0A=20freebsd-ports@freebsd.org |Subject:=20Re:=20web=20FreeBSD=20Ports=20Search=20is=20out=20of=2 0sync|References:=20<50BA347D.9080301@quip.cz>=20=20=20|In-Reply-To:=20; b=cQ//uJuuwn4Rri2Uo1wC6sKCagrwn1Ynp1yq8aiSP/4vW9V9TSi06qPnQ2vR+rrpS C8JHltTXgKhgEhI7qtfjF4/aQGoH3jdEA86/Xr6apnpZtNvsLVzX0ShPyNOdnx5n2/ pwlaXOxW8Zj/r0q6uD8HucTyeVg8B8EXyMnm60QY= Message-ID: <50BB0D7D.6030406@infracaninophile.co.uk> Date: Sun, 02 Dec 2012 08:12:45 +0000 From: Matthew Seaman User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:17.0) Gecko/17.0 Thunderbird/17.0 MIME-Version: 1.0 To: Kimmo Paasiala Subject: Re: web FreeBSD Ports Search is out of sync References: <50BA347D.9080301@quip.cz> In-Reply-To: X-Enigmail-Version: 1.4.6 OpenPGP: id=60AE908C Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="------------enigF5AFCE3DA55A3BF7C2C9E8C6" X-Virus-Scanned: clamav-milter 0.97.6 at lucid-nonsense.infracaninophile.co.uk X-Virus-Status: Clean X-Spam-Status: No, score=-2.2 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,SPF_FAIL autolearn=no version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on lucid-nonsense.infracaninophile.co.uk Cc: Eitan Adler , freebsd-ports@freebsd.org, Miroslav Lachman <000.fbsd@quip.cz>, Kevin Oberman X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 02 Dec 2012 08:13:08 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigF5AFCE3DA55A3BF7C2C9E8C6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 02/12/2012 06:50, Kimmo Paasiala wrote: > It takes about half an hour on my dog slow intel atom D510. Is there > anything in the works to speed up 'make index'? I understand that the > slowest part is the evaluation of dependencies, is that right? The slow part is parsing around 25,000 Makefiles ( + reading about 25000 pkg-descr files, but that's relatively quick) in order to extract the values of certain variables. make(1) typically takes about 200ms per Makefile, which is ages. Speedups are possible: parallelization (which is what make index does) or cacheing the results and only rerunning make when changes could affect the output (which is what FreeBSD::Portindex do= es) Once you've done all that Makefile processing, chasing all the dependencies is fairly quick. A great deal of time and effort has been spent on making 'make index' run as fast as possible. All the easy optimizations and many of the not-so-easy ones have already been applied. Further improvement would probably require a radical 'throw it away and write something better from scratch' approach, which I'm not at all sure is worth it since for the most part, the ports works just fine without any sort of index at all, and it is the various websites that essentially show nicely formatted data from the INDEX that would really benefit. Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. PGP: http://www.infracaninophile.co.uk/pgpkey JID: matthew@infracaninophile.co.uk --------------enigF5AFCE3DA55A3BF7C2C9E8C6 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.16 (Darwin) Comment: Using GnuPG with undefined - http://www.enigmail.net/ iEYEARECAAYFAlC7DYQACgkQ8Mjk52CukIyaGQCeLxWYuXdcbdaFqQcCKFKFt94V PakAmgL1Cx+xh5ulCdj2Oq+A9dmBkyw5 =ac/8 -----END PGP SIGNATURE----- --------------enigF5AFCE3DA55A3BF7C2C9E8C6--