MacBook Pro (HFS+), crew:
On a cold clone:
$ time hg revert -r 0 o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
real 0m29.538s
user 0m8.883s
sys 0m11.914s
On a hot clone:
$ echo a > o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
$ time hg revert o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
real 0m17.101s
user 0m6.633s
sys 0m9.110s
$ echo a > o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
$ time hg st
M o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
real 0m12.507s
user 0m3.960s
sys 0m6.003s
$ hg --debug --profile revert
o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
saving current version of
o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java as
o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java.orig
reverting o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
resolving manifests
overwrite True partial True
ancestor 579f9883aaeb local 579f9883aaeb+ remote 579f9883aaeb
o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java: remote is newer -> g
getting o.o.util/src/org/netbeans/modules/openide/util/AWTBridge.java
1417174 function calls (1414490 primitive calls) in 17.451 CPU seconds
Ordered by: internal time, call count
List reduced from 308 to 40 due to restriction <40>
ncalls tottime percall cumtime percall filename:lineno(function)
2 12.251 6.126 13.805 6.903 dirstate.py:434(findfiles)
340333 0.764 0.000 0.764 0.000 posixpath.py:56(join)
67301 0.491 0.000 15.239 0.000 dirstate.py:382(statwalk)
78/40 0.420 0.005 0.501 0.013 demandimport.py:43(_load)
36471 0.401 0.000 0.401 0.000 posixpath.py:374(normpath)
1 0.386 0.386 0.490 0.490 dirstate.py:130(_read)
2 0.329 0.165 14.632 7.316 dirstate.py:523(status)
4 0.271 0.068 1.372 0.343 localrepo.py:830(walk)
1 0.259 0.259 0.259 0.259 manifest.py:39(parse)
3 0.212 0.071 0.212 0.071 revlog.py:872(loadcache)
134592 0.179 0.000 0.198 0.000 dirstate.py:406(imatch)
6 0.171 0.028 0.171 0.028 revlog.py:94(decompress)
728/2 0.133 0.000 0.234 0.117 sre_parse.py:385(_parse)
67294 0.128 0.000 0.158 0.000 util.py:550(<lambda>)
67303 0.103 0.000 0.103 0.000 struct.py:77(unpack)
67298 0.079 0.000 0.160 0.000 dirstate.py:363(_supported)
108/81 0.074 0.001 0.107 0.001 demandimport.py:80(_demandimport)
1 0.061 0.061 0.226 0.226 merge.py:333(manifestmerge)
3 0.060 0.020 0.060 0.020 revlog.py:51(hash)
67298 0.060 0.000 0.081 0.000 stat.py:54(S_ISREG)
783/2 0.059 0.000 0.069 0.034 sre_compile.py:38(_compile)
719 0.058 0.000 0.058 0.000 ignore.py:11(_parselines)
3 0.050 0.017 0.053 0.018 revlog.py:441(__init__)
30686 0.047 0.000 0.047 0.000 sre_parse.py:188(__next)
833/52 0.037 0.000 0.037 0.001 sre_parse.py:146(getwidth)
169802 0.037 0.000 0.037 0.000 util.py:1143(pconvert)
1 0.036 0.036 0.060 0.060 manifest.py:30(copy)
134590 0.036 0.000 0.036 0.000 util.py:253(always)
29947 0.031 0.000 0.077 0.000 sre_parse.py:207(get)
2 0.024 0.012 0.024 0.012 manifest.py:13(__init__)
4 0.022 0.006 0.957 0.239 dirstate.py:27(__getattr__)
67366 0.022 0.000 0.022 0.000 stat.py:29(S_IFMT)
29896 0.019 0.000 0.019 0.000 sre_parse.py:144(append)
5 0.019 0.004 0.726 0.145 manifest.py:54(read)
7 0.018 0.003 0.495 0.071 revlog.py:921(revision)
1 0.015 0.015 0.015 0.015 shutil.py:18(copyfileobj)
67294 0.014 0.000 0.014 0.000 util.py:541(<lambda>)
1 0.013 0.013 8.138 8.138 hg.py:292(revert)
30891 0.010 0.000 0.010 0.000 sre_parse.py:136(__getitem__)
1 0.007 0.007 0.065 0.065 ignore.py:24(_parsefiles) |