|
Message-ID: <5240460A.9030803@barfooze.de> Date: Mon, 23 Sep 2013 15:45:46 +0200 From: John Spencer <maillist-musl@...fooze.de> To: sabotage@...ts.openwall.com Subject: Re: Installing everything in opt On 09/23/2013 02:36 PM, Christian Neukirchen wrote: > Paul Schutte<sjpschutte@...il.com> writes: > >> Hi Guys, >> >> I apologize in advance if I step on someone toes with this post. >> >> Performance wise it is very bad to put everything in /opt and using >> symlinks. >> >> lets look at an example of a binary called test1 that uses three dynamic >> libraries. >> >> In a "normal" installation it will go something like this: >> >> dirlookup(/bin)->inodelookup(/bin)->dirlookup(test1)->inodelookup(test1)->load(test1) >> >> >> In the "symlink" installation it will go something like this: >> >> dirlookup(/bin)->inodelookup(/bin)->dirlookup(test1)->inodelookup(test1)->readsymlink(test1) >> ->dirlookup(/opt)->inodelookup(/opt)->dirlookup(test1dir)->inodelookup(test1dir) >> ->dirlookup(/bin)->inodelookup(/bin)->->dirlookup(test1)->inodelookup(test1) >> >> 5 operations vs 13 operations. >> >> If we take into account the 3 libraries we are at 20 ops vs 52. >> >> If we asume SATA with 8ms average seek, this will be 0.16s vs 0.416s seek >> time for the same binary. >> >> One might argue that the meta data will be cached and therefore the penalty >> is not that bad. > > It would be interesting to benchmark the actual performance loss, > e.g. of a kernel build with toolchain in /usr vs symlinked. > yes, seeing some real-world performance numbers would be interesting. i doubt that it makes a noticable difference, and it's gonna be much faster than a glibc based system either way, due to musl's syscall-optimized startup code. btw, sabotage makes it really trivial to change the way packages are installed. if you don't want to use the one-package-per-dir strategy, and the flexible symlink management (butch unlink, butch relink, etc) you can edit KEEP/butch_template... and change the variables butch_do_custom_destdir=true butch_do_cleanup_custom_destdir=true butch_do_relocate=true to false.
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.