On Mon, Nov 2, 2015 at 8:23 PM, Duy Nguyen <pclouds@xxxxxxxxx> wrote: > On Mon, Nov 2, 2015 at 3:54 PM, Paolo Ciarrocchi > <paolo.ciarrocchi@xxxxxxxxx> wrote: >> On Sun, Nov 1, 2015 at 2:55 PM, Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> wrote: >> >> Hi Duy, >> >>> This series builds on top of the index-helper series I just sent and >>> uses watchman to keep track of file changes in order to avoid lstat() >>> at refresh time. The series can also be found at [1] >>> >>> When I started this work, watchman did not support Windows yet. It >>> does now, even if still experimental [2]. So Windows people, please >>> try it out if you have time. >>> >>> To put all pieces so far together, we have split-index to reduce index >>> write time, untracked cache to reduce I/O as well as computation for >>> .gitignore, index-helper for index read time and this series for >>> lstat() at refresh time. The remaining piece is killing lstat() from >>> untracked cache, but right now it's just some idea and incomplete >>> code. >> >> Did you manage to measure the speedup introduced by this series? > > It was from last year. I may have measured it but because I didn't > save it in the commit message, it was lost anyway. Installing watchman > and measuring with webkit.git soon.. Test repo: webkit.git with 104665 tracked files, 5615 untracked, 3517 dirs. Best numbers out of a few tries. This is best case scenario. Normal usage could have worse numbers. There is something strange about the "-uno" measurements. I don't think watchman+untracked cache can beat -uno.. Maybe I did something wrong. 0m0.383s index v2 0m0.351s index v4 0m0.352s v2 split-index 0m0.309s v2 split index-helper 0m0.159s v2 split helper untracked-cache 0m0.123s v2 split helper "status -uno" 0m0.098s v2 split helper untracked watchman 0m0.071s v2 split helper watchman "status -uno" Note, the watchman series needs s/free_watchman_shm/release_watchman_shm/ (I didn't do a good job of testing after rebase). And there's a small bug in index-helper --detach code writing incorrect PID.. -- Duy -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html