[Shotwell] shotwell with 100k pics: somewhere between quite fast and too slow
oliver
oliver at first.in-berlin.de
Mon Aug 15 00:57:32 UTC 2011
Hello,
I did the proiling with 132324 imported pictures
(not copied to the shotwell "repository").
Used system: Arch-Linux on AMD64 (dual core) notebook/laptop.
General notes:
==============
1)
Sometimes shotwell seemed to hang, e.g.
when quitting it.
I found out that it not really hangs forever, but for a long time.
E.g. it ended after about 14 minutes, or in one test after 9 minutes...)
In case it "hangs" (temporarily, as mentioned above), strace gave me the
following output:
======================================================================
[...]
clone(child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD, parent_tidptr=0x7fffdcc6ac8c) = ? ERESTARTNOINTR (To be restarted)
--- {si_signo=SIGPROF, si_code=SI_KERNEL, si_value={int=1, ptr=0x1}} (Profiling timer expired) ---
rt_sigreturn(0x1b) = 56
clone(child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD, parent_tidptr=0x7fffdcc6ac8c) = ? ERESTARTNOINTR (To be restarted)
--- {si_signo=SIGPROF, si_code=SI_KERNEL, si_value={int=1, ptr=0x1}} (Profiling timer expired) ---
rt_sigreturn(0x1b) = 56
clone(child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD, parent_tidptr=0x7fffdcc6ac8c) = ? ERESTARTNOINTR (To be restarted)
--- {si_signo=SIGPROF, si_code=SI_KERNEL, si_value={int=1, ptr=0x1}} (Profiling timer expired) ---
rt_sigreturn(0x1b) = 56
clone(child_stack=0, flags=CLONE_PARENT_SETTID|SIGCHLD, parent_tidptr=0x7fffdcc6ac8c) = ? ERESTARTNOINTR (To be restarted)
--- {si_signo=SIGPROF, si_code=SI_KERNEL, si_value={int=1, ptr=0x1}} (Profiling timer expired) ---
rt_sigreturn(0x1b) = 56
[...]
======================================================================
But shotwell sometimes finished immediately.
This seems only to occur, if profiling-switch is enabled.
I looked up the problem: it seems NOT to be shotwell-specific,
and so I already mentioned it on the linux kernel mailing list.
AFAIK, the ERESTARTNOINTR is not intended to pop up in user space.
2)
The slowness I talked about, also occured without these profiling-related "hanging".
I hope to have some time to lok at this issue again later.
3)
When starting shotwell, the progress bar goes up to 49% very fast.
After that, it stalls for a while, until the program opens.
When the stalling occurs, a lot of mprotect()/brk() is going on.
Results:
========
Because my last mail was too big for the mailinglist,
I put the results online; they are temporarily available here:
http://www.first.in-berlin.de/tmp/shotwell-gprof.tgz
Ciao,
Oliver
P.S.: The moderator of the list can cancel my last big mail,
because this one is the replacement for that big mail.
P.P.S.: The hanging-problem seems to be very unspecifc.
Sometimes it occurs, sometimes not, or at least it
seesm to hang not always the same amount of time.
I could not find out any regularity here.
More information about the Shotwell-list
mailing list