Next step, eliminating the linked list structure in favor or red-black
trees, maybe.

Due to the way pkg_install works, this most likely is just adding
complexity for no gain, it might actually slow it down.

Hmmm... the only thing is that it does the linked list traversal a number of times per dependency. I'll take a look in gdb at the size of each dependency and then confer with Kirill (my mentor) about that a bit more.

If you tend to look for the same few items over and over,
just move items to the front of the list as soon as you
find them.  Alternatively, if you know you won't look for
this item ever again, move it to the end of the list or
remove it from the list entirely.

Simple tricks like this can greatly speed things up with
almost no effort.  Better yet, do easy things like this first;
if they help, then look at more complex approaches.

As Joerg said, though, you're not likely to gain much from
this.  pkg_install is almost entirely disk bound.

I spent a lot of time recently in libarchive/bsdtar optimizing
the disk handling; I can share lots of ideas for improving
performance of disk-bound operations like this.

Tim Kientzle
_______________________________________________
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to