Gentoo Archives: gentoo-performance

From: Jesse Guardiani <jesse@×××××××.net>
To: gentoo-performance@l.g.o
Subject: [gentoo-performance] Re: portage performance
Date: Fri, 16 Jul 2004 23:18:11
Message-Id: cd9nnb$nm0$
In Reply to: [gentoo-performance] Re: portage performance by Jerry McBride
Jerry McBride wrote:

> Jesse Guardiani wrote: > >> Hello, >> >> First off, sorry if this isn't the right place! >> I didn't see anything more appropriate though, except >> perhaps Portage-dev, but I'm not a developer. >> >> I'm a FreeBSD user switching to Gentoo for my home >> system. Linux 2.6 is a LOT more stable than any >> FreeBSD 5.x-RELEASE kernels right now, and Linux >> has much better support for Wine and such. >> >> One of the most obvious differences between FreeBSD >> ports and Gentoo Portage is how LONG it takes to >> search for ports/packages with Portage. >> >> I have 525 ports installed on my FreeBSD laptop right >> now, and probably only half of that installed on the >> Gentoo machine, but the gentoo machine crunches a lot >> more doing a --search than the FreeBSD machine does >> with a pkg_version -vs 'name'. >> >> And forget about --searchdesc! That takes ages! >> >> Is portage not hash indexed or something? >> > > The main problem is this.... the portage database is a file system based > mechanism. That is to say, when you update, search or otherwise use > emerge, the program is busy as hell leafing through thousands of files > looking for what you want.. > > "Hashed", "indexed"??? Not even close.... > > Portage is begging for a decent database engine and I pray it's sql > based.... > > The other hitch is that portage is written in an interpreted language, > Python. Python is an excellent programming language, no doubt about it, > but performance isn't one of it's highlights. Moving portage to C would be > so much better....
What about O'Caml? Nearly as fast as C, but without the bugs... Hard to learn, yes, but technically very appealing. It can even compile directly into machine code on many platforms. I recently learned O'Caml so I could write a billing system hook and keep it fast. It's a very nice language. -- Jesse Guardiani, Systems Administrator WingNET Internet Services, P.O. Box 2605 // Cleveland, TN 37320-2605 423-559-LINK (v) 423-559-5145 (f) -- gentoo-performance@g.o mailing list