In a simple package install on a locally compiled package, it took over 3 min to install a _single_ 300K package (joe). a seven package install (openssl, openssl, and the 5 openssh parts from another host took over ten minutes. The dependency resolution logic seems to need serious reqork to gain speed. Perhaps build a dependency list, and then sort + iuniq it, before checking what is left. The sample URL is on a dual pent 150, with 'only' 24 meg -- RH 6.9 would not even install with 'only' 16 M
You need more memory and possibly a faster cpu. The dependency resolutions are already nearly as fast as posssible by caching information in memory, but that has increased the memory footprint of rpm considerably. Running a SMP kernel with only 24 Mb increases contention for memory even more, as other processes will run (and compete for memory) at the same time as rpm. More I cannot guess without more detailed information.
Even adding more physical ram, and freeing ram by killing off unneeded processes, and removing stray processes, the snapshots at 20 sec. intervals are pretty scary. Only 3 M of ram is in use by RPM, yet it takes almost 2 wall clock min (1 M 7 s process time) to install a trivial package under 300K in size. Processor contention _should NOT_ be an issue --- the second processessor shows as idle. http://swampfox.owlriver.com:/~herrold/joe.install I'm worried.