Jeff King <peff@xxxxxxxx> writes: > On Wed, Sep 28, 2022 at 12:21:15AM -0400, Jeff King wrote: > >> The downside is that we're copying the data an extra time. It's not very >> much data, and it's all fixed size, so the compiler should be able to do >> a reasonable job of optimizing here. But I didn't time the potential >> impact. > ... > Summary > './test-tool.old read-cache 1000' ran > 1.11 ± 0.04 times faster than './test-tool.new read-cache 1000' > > I think that's probably the nail in the coffin for my proposed approach. > To be fair, it's only .3ms extra for a normal program which reads the > index once. That's not that big in absolute numbers. But there are > larger index files in the wild. And the improvement in simplicity and > readability is simply not that great. Thanks for the due diligence. This result may be an indication of how efficient the existing code is, but it is a bit surprising that one more copy of the stat_data struct makes that much difference.