Chuck Anderson wrote:
On Tue, Feb 20, 2007 at 03:09:12PM +0100, Nils Philippsen wrote:
I suppose that running ldconfig continously is not useful, it could be done just once at the end of the upgrade.
Not quite I think. Other (later-run) scripts might use those libraries so ldconfig has to be be run before them so they can work. Perhaps those calls could be clustered into one, but I don't know whether this can be done without changes to RPM.
I wonder if ld.so could be changed to run the cache update as needed, on-the-fly?
should be possible (using inotify and only add the new created files to the cache) but for this we need a ld daemon (dunno if its possible to update only a part of the cache) /sbin/ldconfig can check if the daemon is running and if yes just do nothing, else work as it used to be (like it did before). (still works when daemon is not running). this would also speed up yum updates too.
about yum: afaik currently yum works like this get metadata for repo A get metadata for repo B ... parse metadata for repo A parse metadata fro repo B ... why waiting so long until parsing metadata of repo B ? why not do it after download while downloading b? so yum can just create a thread for each repo to do the download + parse for each repo in a thread and do this for many repos in parrallel. this should speed up yum init (dunno by how much and dunno if it benifits from smp systems or not but it should) but why only doing this for repo parsing? why not for getting package headers (there are not that big so bandwith should not be the bottleneck, but waiting for nothing is it)
I don't have any code (and so no benchmarks) but I think this ideas could speed up the install/update of packages alot (not only a few %).