monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Monotone-devel] mtn status speed


From: Tony Tung
Subject: Re: [Monotone-devel] mtn status speed
Date: Tue, 9 Dec 2008 09:54:59 -0800

On Dec 9, 2008, at 5:54 AM, Jack Lloyd wrote:

On Mon, Dec 08, 2008 at 09:06:10PM -0800, Tony Tung wrote:

I suspect it is calculating the status for all the files in the
workspace, and *then* filtering out just the files in the command
line.

I could not say for certain, but from looking at the code implementing
the status command it appears to respect the masks provided on the
command line. Tracking the open syscalls using strace
(http://linux.die.net/man/1/strace) also seemed to confirm this, mtn
didn't open or stat any files outside of the paths specified.

One odd thing I noticed is that mtn will stat each file twice,
right in a row.

stat("rcs_file.hh", {st_mode=S_IFREG|0600, st_size=1610, ...}) = 0
stat("rcs_file.hh", {st_mode=S_IFREG|0600, st_size=1610, ...}) = 0
open("rcs_file.hh", O_RDONLY)           = 4

which seems a little odd, but shouldn't be a huge performance issue.

You are probably right. I ran with Saturn (gprof equivalent on osx), and the vast majority of time is spent in work::get_parent_rosters. Does that help?

Thanks,
Tony




reply via email to

[Prev in Thread] Current Thread [Next in Thread]