On Wed, 2 Feb 2011, Konstantin Olchanski wrote:
> On Wed, Feb 02, 2011 at 08:34:52PM +0100, Eduard Avetisyan wrote:
> > > On Wed, Feb 02, 2011 at 08:04:12PM +0100, Eduard Avetisyan wrote:
> > > >
> > > > The same strace produces ~130 calls in my case, which include but are not
> > > > limited to libraries like:
> > > > open("tls/i686/sse2/libXpm.so.4", O_RDONLY) = -1 ENOENT (No such file or directory)
> > >
> > > You have "." in your LD_LIBRARY_PATH. Remove it and those syscalls will go away.
> >
> > Good hint! Changing the LD_LIBRARY_PATH from ":$ROOTSYS/lib" to simply
> > "$ROOTSYS/lib" (just a colon difference) reduced the startup time from 12s
> > to 8s, so by 1/3. Still, it's way slower than a local startup time of 0.1s.
> >
>
> You are still making the system search for every system library in $ROOTSYS/lib,
> which I understand is a slow SSHFS filesystem.
Quite the contrary! The $ROOTSYS is local and fast! Only the current working directory is on SSHFS!
>
> You can try to put the system library path (/lib, etc) in front of $ROOTSYS/lib,
> so the loader quickly finds the system libraries and does not touch SSHFS.
Tried, doesn't change anything (as $ROOTSYS is local anyway). But I found
that the slow part happens with the following strace signature:
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb73769b8) = 27680 waitpid(27680, root [0] [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WSTOPPED) = 27680
namely, "waitpid(27680," is printed and the rest shows up 8-12 seconds later.
Thanks for looking into this!
Eduard
>
> --
> Konstantin Olchanski
> Data Acquisition Systems: The Bytes Must Flow!
> Email: olchansk-at-triumf-dot-ca
> Snail mail: 4004 Wesbrook Mall, TRIUMF, Vancouver, B.C., V6T 2A3, Canada
>
>
Received on Wed Feb 02 2011 - 20:55:51 CET
This archive was generated by hypermail 2.2.0 : Thu Feb 03 2011 - 17:50:02 CET