Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 02 Dec 2012 08:12:45 +0000
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        Kimmo Paasiala <kpaasial@gmail.com>
Cc:        Eitan Adler <lists@eitanadler.com>, freebsd-ports@freebsd.org, Miroslav Lachman <000.fbsd@quip.cz>, Kevin Oberman <kob6558@gmail.com>
Subject:   Re: web FreeBSD Ports Search is out of sync
Message-ID:  <50BB0D7D.6030406@infracaninophile.co.uk>
In-Reply-To: <CA%2B7WWSeT-FTD=YBvbBcjhWWSWUbcMjfUiwtwaXYVPW=yZruo8w@mail.gmail.com>
References:  <50BA347D.9080301@quip.cz> <CAF6rxgkhbOLN3ZZhxRZgYtQWF4yeHjiPS68YryKE-vAqitAvFg@mail.gmail.com> <CAN6yY1tqH857Ju2C8ADVPYG9VzhJYmY3Rya9fAvP=pcbVvvuRA@mail.gmail.com> <CA%2B7WWSeT-FTD=YBvbBcjhWWSWUbcMjfUiwtwaXYVPW=yZruo8w@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
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--



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