Re: SSHFS makes the ROOT launch speed slow?

From: OKUMURA, Akira <oxon_at_astro.isas.jaxa.jp>
Date: Mon, 14 Feb 2011 07:34:46 -0800


Thanks Fons and Dario,

Here is a full record of "time" command and "dtruss". Please let me know if you find anything from the log. /Volumes/ki-fc1 is the mounted SSHFS directory, where "time root" takes 2.7 seconds.

Regards,

Akira


Akira-laptop:~ root# export ROOTSYS=/usr/local/root
Akira-laptop:~ root# export LD_LIBRARY_PATH=/opt/local/lib:$ROOTSYS/lib:$LD_LIBRARY_PATH
Akira-laptop:~ root# export PATH=$ROOTSYS/bin:$PATHAkira-laptop:~ root# root -n -l
Akira-laptop:~ root# cd /Volumes/ki-fc1/
Akira-laptop:ki-fc1 root# time root -n -l -b -q
root [0]
real	0m2.702s
user	0m0.085s
sys	0m0.125s

Akira-laptop:ki-fc1 root# cd -
/var/root
Akira-laptop:~ root# time root -n -l -b -q root [0]
real	0m0.192s
user	0m0.057s
sys	0m0.103s

Akira-laptop:~ root# cd -
/Volumes/ki-fc1
Akira-laptop:ki-fc1 root# dtruss root -n -l -b -q
SYSCALL(args) 		 = return
getpid(0x7FFF5FBFF7D0, 0x7FFFFFE00050, 0x0)		 = 2143 0
open_nocancel("/dev/urandom\0", 0x0, 0x0)		 = 3 0
read_nocancel(0x3, "}\245N\031\177\032FB\327\320\025\262kt\360\222\235}\352\263\232<\262\027\212+\357\244\315\245\t\233\314\215h\a\255\210=\333\2500\337\315d\234\313pT\375\217A3U`\f\361\202\0176\310\240\245\340(\252\307\261\353mk\314.}\272\032\300\023\233\262\222\215\220\004Y+Y\330\026Kd-L\203FA\353c%\360\243\017\246 }\a\307\f\0", 0x6C)		 = 108 0
close_nocancel(0x3)		 = 0 0
issetugid(0x100000000, 0x7FFF5FBFFAC8, 0x7FFF5FC40530)		 = 0 0
geteuid(0x100000000, 0x7FFF5FBFFAC8, 0x0)		 = 0 0
__sysctl(0x7FFF5FBFD6C0, 0x2, 0x7FFF5FBFD680)		 = 0 0
__sysctl(0x7FFF5FBFD680, 0x2, 0x7FFF5FBFD71C)		 = 0 0
shared_region_check_np(0x7FFF5FBFD888, 0x0, 0x7FFF5FC1DC86)		 = 0 0
stat64("/usr/lib/dtrace/libdtrace_dyld.dylib\0", 0x7FFF5FBFCC90, 0x7FFF5FBFD2D0)		 = 0 0
open("/usr/lib/dtrace/libdtrace_dyld.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\312\376\272\276\0", 0x1000, 0x0)		 = 4096 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x1000)		 = 4096 0
mmap(0x100008000, 0x2000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x8000 0
mmap(0x10000A000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0xA000 0
mmap(0x10000B000, 0x1F10, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0xB000 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXpm.4.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
open("/opt/local/lib/libXpm.4.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x10000D000, 0xE000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0xD000 0
mmap(0x10001B000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B000 0
mmap(0x10001C000, 0x2038, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x1C000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAC50)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXext.6.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
open("/opt/local/lib/libXext.6.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x10001F000, 0xF000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x1F000 0
mmap(0x10002E000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x2E000 0
mmap(0x10002F000, 0x3878, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x2F000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFACC0)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libX11.6.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
open("/opt/local/lib/libX11.6.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x100033000, 0x120000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x33000 0
mmap(0x100153000, 0x5000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x153000 0
mmap(0x100158000, 0x1D3E8, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x158000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAC60)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXft.2.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
open("/opt/local/lib/libXft.2.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x100176000, 0x11000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x176000 0
mmap(0x100187000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x187000 0
mmap(0x100188000, 0x3B28, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x188000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAAC0)		 = 0 0
close(0x3)		 = 0 0
stat64("/usr/lib/libstdc++.6.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
stat64("/usr/lib/libSystem.B.dylib\0", 0x7FFF5FBFC9D0, 0x7FFF5FBFD010)		 = 0 0
stat64("/opt/local/lib/libxcb.1.dylib\0", 0x7FFF5FBFC7F0, 0x7FFF5FBFCE30)		 = 0 0
open("/opt/local/lib/libxcb.1.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x10018C000, 0x15000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x18C000 0
mmap(0x1001A1000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x1A1000 0
mmap(0x1001A2000, 0xA2D0, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x1A2000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAB00)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXau.6.dylib\0", 0x7FFF5FBFC7F0, 0x7FFF5FBFCE30)		 = 0 0
open("/opt/local/lib/libXau.6.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1001AD000, 0x2000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x1AD000 0
mmap(0x1001AF000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x1AF000 0
mmap(0x1001B0000, 0x848, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B0000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAC60)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXdmcp.6.dylib\0", 0x7FFF5FBFC7F0, 0x7FFF5FBFCE30)		 = 0 0
open("/opt/local/lib/libXdmcp.6.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1001B1000, 0x4000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B1000 0
mmap(0x1001B5000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B5000 0
mmap(0x1001B6000, 0xC40, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B6000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFACB0)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libintl.8.dylib\0", 0x7FFF5FBFC7F0, 0x7FFF5FBFCE30)		 = 0 0
open("/opt/local/lib/libintl.8.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1001B7000, 0xA000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x1B7000 0
mmap(0x1001C1000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x1C1000 0
mmap(0x1001C3000, 0x2410, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x1C3000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAA80)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libiconv.2.dylib\0", 0x7FFF5FBFC7F0, 0x7FFF5FBFCE30)		 = 0 0
open("/opt/local/lib/libiconv.2.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1001C6000, 0xFD000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x1C6000 0
mmap(0x1002C3000, 0x2000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x2C3000 0
mmap(0x1002C5000, 0x9D30, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x2C5000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAB70)		 = 0 0
close(0x3)		 = 0 0
stat64("/usr/lib/system/libmathCommon.A.dylib\0", 0x7FFF5FBFC240, 0x7FFF5FBFC880)		 = 0 0
stat64("/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation\0", 0x7FFF5FBFC670, 0x7FFF5FBFCCB0)		 = 0 0
stat64("/usr/lib/libauto.dylib\0", 0x7FFF5FBFC4C0, 0x7FFF5FBFCB00)		 = 0 0
stat64("/usr/lib/libicucore.A.dylib\0", 0x7FFF5FBFC4C0, 0x7FFF5FBFCB00)		 = 0 0
stat64("/usr/lib/libobjc.A.dylib\0", 0x7FFF5FBFC4C0, 0x7FFF5FBFCB00)		 = 0 0
stat64("/usr/lib/libz.1.dylib\0", 0x7FFF5FBFC4C0, 0x7FFF5FBFCB00)		 = 0 0
stat64("/opt/local/lib/libfontconfig.1.dylib\0", 0x7FFF5FBFC790, 0x7FFF5FBFCDD0)		 = 0 0
open("/opt/local/lib/libfontconfig.1.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1002CF000, 0x2F000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x2CF000 0
mmap(0x1002FE000, 0x2000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x2FE000 0
mmap(0x100300000, 0x7310, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x300000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFA9D0)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libexpat.1.dylib\0", 0x7FFF5FBFC790, 0x7FFF5FBFCDD0)		 = 0 0
open("/opt/local/lib/libexpat.1.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x100308000, 0x20000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x308000 0
mmap(0x100328000, 0x2000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x328000 0
mmap(0x10032A000, 0x3AE0, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x32A000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFABB0)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libfreetype.6.dylib\0", 0x7FFF5FBFC790, 0x7FFF5FBFCDD0)		 = 0 0
open("/opt/local/lib/libfreetype.6.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x10032E000, 0x81000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x32E000 0
mmap(0x1003AF000, 0x5000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x3AF000 0
mmap(0x1003B4000, 0xE840, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x3B4000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAB70)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libz.1.dylib\0", 0x7FFF5FBFC790, 0x7FFF5FBFCDD0)		 = 0 0
open("/opt/local/lib/libz.1.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1003C3000, 0x15000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x3C3000 0
mmap(0x1003D8000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x3D8000 0
mmap(0x1003D9000, 0x1818, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x3D9000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAB60)		 = 0 0
close(0x3)		 = 0 0
stat64("/opt/local/lib/libXrender.1.dylib\0", 0x7FFF5FBFC790, 0x7FFF5FBFCDD0)		 = 0 0
open("/opt/local/lib/libXrender.1.dylib\0", 0x0, 0x0)		 = 3 0
pread(0x3, "\317\372\355\376\a\0", 0x1000, 0x0)		 = 4096 0
mmap(0x1003DB000, 0x8000, 0x5, 0x12, 0x3, 0x7FFF00000001)		 = 0x3DB000 0
mmap(0x1003E3000, 0x1000, 0x3, 0x12, 0x3, 0x7FFF00000001)		 = 0x3E3000 0
mmap(0x1003E4000, 0x1428, 0x1, 0x12, 0x3, 0x7FFF00000001)		 = 0x3E4000 0
fcntl(0x3, 0x2C, 0x7FFF5FBFAA30)		 = 0 0
close(0x3)		 = 0 0
madvise(0x7FFF8966C000, 0x2000, 0x5)		 = 0 0
open("/dev/dtracehelper\0", 0x2, 0x7FFF5FC46070)		 = 3 0
ioctl(0x3, 0x80086804, 0x7FFF5FBFD620)		 = 0 0
close(0x3)		 = 0 0
__sysctl(0x7FFF5FBFD510, 0x2, 0x7FFF5FBFD500)		 = 0 0
bsdthread_register(0x7FFF851623DC, 0x7FFF85142FF8, 0x2000)		 = 0 0
thread_selfid(0x7FFF851623DC, 0x7FFF85142FF8, 0x0)		 = 28422 0
open_nocancel("/dev/urandom\0", 0x0, 0x7FFF70906BE0)		 = 3 0
read_nocancel(0x3, "\214\343\027\264Y\236\200\234\356\357~\360\206\200X\225\362D|\017\336\237B\336\311\351\301)\355Y\0", 0x40)		 = 64 0
close_nocancel(0x3)		 = 0 0
mmap(0x0, 0x3000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x3E6000 0
__sysctl(0x7FFF5FBFD390, 0x2, 0x7FFF5FBFD350)		 = 0 0
__sysctl(0x7FFF5FBFD350, 0x2, 0x7FFF5FBFD3E8)		 = 0 0
getpid(0x7FFF5FBFD2E0, 0x7FFFFFE00050, 0x0)		 = 2143 0
open_nocancel("/dev/urandom\0", 0x0, 0x0)		 = 3 0
read_nocancel(0x3, "\302\003J\347/G\271\212\343\233\364\361\370N\310\224\230\351\346\374\304\376z\305\242\326M`\325\245\001\037\224\242\371/\353\264\326\304q\201\327f\324Go\200H\243\200*\351k$\226\t\257S\241\201M\017#\375\345\215\234Gp\371\303\332\263V\001\035~\277\303)\250^,P\332\0", 0x6C)		 = 108 0
close_nocancel(0x3)		 = 0 0
__sysctl(0x7FFF5FBFD390, 0x2, 0x7FFF5FBFD3BC)		 = 0 0
mmap(0x0, 0x17000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x3E9000 0
mmap(0x0, 0x17000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x400000 0
mmap(0x0, 0x1000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x417000 0
mmap(0x0, 0x200000, 0x3, 0x1002, 0x7000000, 0x7FFF00000001)		 = 0x418000 0
munmap(0x100418000, 0xE8000)		 = 0 0
munmap(0x100600000, 0x18000)		 = 0 0
__sysctl(0x7FFF5FBFD4F0, 0x2, 0x7FFF5FBFD4B0)		 = 0 0
__sysctl(0x7FFF5FBFD4B0, 0x2, 0x7FFF70913760)		 = 0 0
__sysctl(0x7FFF5FBFD4F0, 0x2, 0x7FFF5FBFD4B0)		 = 0 0
__sysctl(0x7FFF5FBFD4B0, 0x2, 0x7FFF70913764)		 = 0 0
__sysctl(0x7FFF5FBFD4F0, 0x2, 0x7FFF5FBFD4B0)		 = 0 0
__sysctl(0x7FFF5FBFD4B0, 0x2, 0x7FFF70913768)		 = 0 0
mmap(0x0, 0x3000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x418000 0
__sysctl(0x7FFF5FBFD4C0, 0x2, 0x7FFF5FBFD480)		 = 0 0
__sysctl(0x7FFF5FBFD480, 0x2, 0x7FFF5FBFD518)		 = 0 0
__sysctl(0x7FFF5FBFD4C0, 0x2, 0x7FFF5FBFD4EC)		 = 0 0
mmap(0x0, 0x17000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x41B000 0
mmap(0x0, 0x17000, 0x3, 0x1002, 0x1000000, 0x7FFF00000001)		 = 0x432000 0
mmap(0x0, 0x200000, 0x3, 0x1002, 0x7000000, 0x7FFF00000001)		 = 0x600000 0
munmap(0x100700000, 0x100000)		 = 0 0
issetugid(0x7FFF85D178AC, 0x7FFF5FBFD46C, 0x7FFF5FBFF9F0)		 = 0 0
stat64("/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation\0", 0x7FFF5FBFC290, 0x7FFF5FBFC8D0)		 = 0 0
mmap(0x0, 0x1000000, 0x3, 0x1002, 0x2000000, 0x22818200000000)		 = 0x700000 0
munmap(0x100700000, 0x100000)		 = 0 0
munmap(0x101000000, 0x700000)		 = 0 0
getuid(0x7FFF5FBFD4EC, 0x7FFF5FBFD4E8, 0x0)		 = 0 0
geteuid(0x100504AF0, 0x11, 0x100501DD0)		 = 0 0
getuid(0x100504AF0, 0x11, 0x0)		 = 0 0
issetugid(0x1, 0x2, 0x1005051E0)		 = 0 0
getuid(0x7FFF5FBFCCBC, 0x0, 0x0)		 = 0 0
stat64("/usr/local/root/bin\0", 0x7FFF5FBFC250, 0x7FFF708FD630)		 = 0 0
open_nocancel("/usr/local/root/bin\0", 0x100004, 0x0)		 = 3 0
fcntl_nocancel(0x3, 0x2, 0x1)		 = 0 0
__sysctl(0x7FFF5FBFB870, 0x2, 0x7FFF7090B718)		 = 0 0
fstatfs64(0x3, 0x7FFF5FBFB8C0, 0x0)		 = 0 0
getdirentries64(0x3, 0x100824000, 0x1000)		 = 1220 0
getdirentries64(0x3, 0x100824000, 0x1000)		 = 0 0
close_nocancel(0x3)		 = 0 0
stat64("/usr/local/root/bin/Contents\0", 0x7FFF5FBFC210, 0xFFFFFFFF)		 = -1 Err#2
stat64("/usr/local/root/bin/Resources\0", 0x7FFF5FBFC210, 0xFFFFFFFF)		 = -1 Err#2
stat64("/usr/local/root/bin/Support Files\0", 0x7FFF5FBFC210, 0xFFFFFFFF)		 = -1 Err#2
stat64("/usr/local/root/bin\0", 0x7FFF5FBFC2B0, 0xFFFFFFFF)		 = 0 0
stat64("/usr/local/root/bin/root\0", 0x7FFF5FBFC4C0, 0x10050610C)		 = 0 0
open("/usr/local/root/bin/root\0", 0x0, 0x1FF)		 = 3 0
read(0x3, "\317\372\355\376\a\0", 0x200)		 = 512 0
close(0x3)		 = 0 0
sigaction(0x2, 0x7FFF5FBFD810, 0x7FFF5FBFD920)		 = 0 0
sigaction(0x3, 0x7FFF5FBFD810, 0x7FFF5FBFD910)		 = 0 0
sigaction(0x1E, 0x7FFF5FBFD810, 0x7FFF5FBFD900)		 = 0 0
fork()		 = 2144 0
root [0] 
wait4(0x860, 0x7FFF5FBFD95C, 0x2)		 = 2144 0

--
OKUMURA, Akira oxon@{astro.isas.jaxa.jp,stanford.edu}
Institute of Space and Astronautical Science (ISAS/JAXA)
Now at KIPAC/SLAC/Stanford
Varian Physics #306, 382 Via Pueblo Mall, MC 4060
Stanford, CA 94305-4060
TEL 650-736-0971/FAX 650-724-5065
Skype : okumura.akira

On 2011/02/14, at 0:47, Fons Rademakers wrote:

> Hi Akira,
> 
>  use Instruments application on MacOS X. It can monitor many things including I/O. Or command line tool dtruss (see man dtruss).
> 
> Cheers, Fons.
> 
> On 13/02/2011 22:06, OKUMURA, Akira wrote:

>> Hello Axel and all,
>>
>> I am using Mac OS X which does not have strace. Does anyone know a good alternative tool to trace file I/O in root.exe?
>>
>> Regards,
>>
>> --
>> OKUMURA, Akira oxon@{astro.isas.jaxa.jp,stanford.edu}
>> Institute of Space and Astronautical Science (ISAS/JAXA)
>> Now at KIPAC/SLAC/Stanford
>> Varian Physics #306, 382 Via Pueblo Mall, MC 4060
>> Stanford, CA 94305-4060
>> TEL 650-736-0971/FAX 650-724-5065
>> Skype : okumura.akira
>>
>> On 2011/02/03, at 5:47, Axel Naumann wrote:
>>
>>> Hi, >>> >>> run strace on root.exe (yes, on Linux). root invokes root.exe, and I >>> believe that's what you are seeing. >>> >>> Cheers, Axel. >>> >>> Eduard Avetisyan wrote on 02/02/2011 08:55 PM: >>>> >>>> >>>> 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 >>>>> >>>>> >>>> >>>
>>
> > -- > Org: CERN, European Laboratory for Particle Physics. > Mail: 1211 Geneve 23, Switzerland > E-Mail: Fons.Rademakers_at_cern.ch Phone: +41 22 7679248 > WWW: http://fons.rademakers.org Fax: +41 22 7669640
Received on Mon Feb 14 2011 - 16:35:13 CET

This archive was generated by hypermail 2.2.0 : Mon Feb 14 2011 - 17:50:01 CET