Hello, yeah, we know buildinstall isn't perfect, that's why it's being rewritten now. I hope that the new code will be working a lot better. -- Martin Gracik ----- "John Reiser" <jreiser@xxxxxxxxxxxx> wrote: > Did buildinstall.functions (and/or mkinitrd), which is now written > in bash, used to be written in some other language, such as python? > get_dso_deps contains a comment "I still hate shell." > > I have been building and testing a DVD from rawhide daily using > pungi. Building takes about 40 to 45 minutes: 10 minutes user CPU, > 14 minutes system CPU, and 16 to 20 minutes download. > > I'd like that to be faster, say 8 to 10 minutes plus download. > After Bug 559647 (quadratic work: genisoimage per .rpm) then > the next longest piece is upd-instroot. "strace -f -c" shows > that there are over 125,000 successful execve(). Now install.img > has around 14,600 files, so the average is more than 8 execve > per file. A detailed examination using strace shows over 97,000 > execve by upd-instroot: > 34573 upd-instroot execve("/usr/bin/dirname", > 15167 upd-instroot execve("/bin/cp", > 12513 upd-instroot execve("/bin/egrep", > 11478 upd-instroot execve("/usr/bin/file", > 5538 upd-instroot execve("/bin/sed", > 5010 upd-instroot execve("/bin/basename", > 3675 upd-instroot execve("/usr/bin/readlink", > 3090 upd-instroot execve("/usr/sbin/chroot", > 2264 upd-instroot execve("/bin/rm", > 1134 upd-instroot execve("/bin/ln", > 1046 upd-instroot execve("/bin/grep", > 1031 upd-instroot execve("/lib64/ld-2.11.90.so", > 1030 upd-instroot execve("/bin/uname", > 703 upd-instroot execve("/usr/bin/find", > 627 upd-instroot execve("/bin/mkdir", > [snip] > and the culprits are instFile() and get_dso_deps() and callers. > One process making some direct calls per file, instead of > clone+execve several times per file, should be much faster. > > -- > > _______________________________________________ > Anaconda-devel-list mailing list > Anaconda-devel-list@xxxxxxxxxx > https://www.redhat.com/mailman/listinfo/anaconda-devel-list _______________________________________________ Anaconda-devel-list mailing list Anaconda-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/anaconda-devel-list