Nguyễn Thái Ngọc Duy <pclouds@xxxxxxxxx> writes: > $ time ~/w/git/git ls-files | head >/dev/null > real 0m4.635s > user 0m4.258s > sys 0m0.329s > > $ time ~/w/git/git update-index level-0-0000/foo > real 0m4.593s > user 0m4.264s > sys 0m0.323s [...] > We need to figure out what git uses 4s user time for. When I worked on the cache-tree stuff, my observation (based on profiling, so I had actual data :-) was that computing SHA1s absolutely dominates everything in such operations. It does that when writing the index to write the trailing checksum, and also when loading it to verify that the index is valid. ls-files shouldn't be so slow though. A quick run with callgrind in a linux-2.6.git tells me it spends about 45% of its time on SHA1s and a whopping 25% in quote_c_style(). I wonder what's so hard about quoting... > This series may be useful on OSes that do not cache heavily. Though > I'm not sure if there is any out there nowadays. I think you could make a case that they should not be called "OS" ;-) -- Thomas Rast trast@{inf,student}.ethz.ch -- 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