Time to abandon recursive pulling of dependencies?

Jeremy Chadwick koitsu at FreeBSD.org
Sat May 12 18:53:33 UTC 2007


On Sat, May 12, 2007 at 01:33:40PM -0500, Stephen Montgomery-Smith wrote:
>  I've done a little poking around.  As of right now, I think that the 
>  registering takes a huge amount of time inside of a function called 
>  "sortdeps" which may be found in /usr/src/usr.sbin/pkg_install/lib/deps.c.

Has anyone built a system with profiled libraries and a pkg_install
binary with gcc -pg?  gprof output would be incredibly beneficial here.
We're grasping at straws until we figure out where most of the time is
spent during a port installation.

The desire to "move to Berkeley DB and use hashes" (mentioned in another
post in this thread) is fine, but that's implying that there's a lot of
filesystem I/O going on which could be optimised by using a key/value
"database" somehow.  No offence, but I'm sceptical of that being the
solution to this whole thing.  I can see that being somewhat useful for
very quickly iterating through a dependency tree, however.

Sorry if this seems like a stupid question, but are there any operations
during a port install which are done on-the-fly that could be
relinquished by utilising something pre-generated and instead managed by
a central source (something similar to ports/INDEX-6 in functionality)?
Just a thought.

-- 
| 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 |



More information about the freebsd-ports mailing list