git status mystery
D. Ben Knoble 2019.11.29
Foreshadowing: unrelated trace reveals detail
D. Ben Knoble 2019.11.29
Send to server
fork/exec
wait
Foreshadowing: unrelated trace reveals detail
D. Ben Knoble 2019.11.29
58??
Lack of concurrency?
Observed: git status is slow
D. Ben Knoble 2019.11.29
N commits | 1718 |
N files | 246 |
N files (inc. submodules) | 2341 !!! |
Size .git | 48 MB |
Size .git/modules | 45 MB |
N git submodules | 39 |
Time dclab original | 0.069s |
Time dclab fixed | 0.008s |
Time Ben original | 0.497s |
Time Ben fixed | 0.026s |
Delta: ~3MB
Human slow!
Not 58...
Red herring
Repo Statistics
Blind experimentation: bad idea
Wasted time with:
π€¦ββοΈ
Finally: πππ git submodule deinit --all πππ => --ignore-submodules
D. Ben Knoble 2019.11.29
Trace (no-flag)
D. Ben Knoble 2019.11.29
38??
stat | 7589, 4.6940ms |
exec | 153, 2.1093ms |
getdents | 1879, 2.5028ms |
fault | 7635, 6.6270ms |
IPC | ΒΌ-Β½-1 |
Trace (flag)
D. Ben Knoble 2019.11.29
stat | 1777, 1544.3us |
exec | 0,0 |
getdents | 97, 221.70us |
fault | 163, 192.11us |
IPC | ΒΎ-1+ |
Conclusion