Jeff King <peff@xxxxxxxx> writes: > Part of the problem, I suspect, is that the attribute lookup code is > optimized for locality. We only unwind as much of the stack as we need, > so looking at "foo/bar/baz.c" after "foo/bar/bleep.c" is much cheaper > than looking at "some/other/directory.c". But with threaded grep, that > locality is likely lost, as we are mixing up attribute requests from > different threads. > > Given that binary lookup means we need every file's gitattribute, it > might be better to look them up serially at the beginning of the > program, and then pass the resulting userdiff driver to grep_buffer > along with each path. Yeah, that was my impression when the performance of threaded grep was discussed, which was before this "let's honor binary attribute". -- 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