Re: Performance (self-compiled vs. distributed)
Show 31 quoted lines
> Le 4 sept. 2025 à 10:05, D. Ben Knoble <ben.knoble@gmail.com> a écrit :
>
> On Wed, Sep 3, 2025 at 4:31 PM D. Ben Knoble <ben.knoble@gmail.com> wrote:
>>
>> I have an installation of Git at /usr/local/bin/git managed by
>> Homebrew. I'm also tinkering with building my own Git (+ patches) to
>> experiment with new features. Today I used "make install …" to get
>> that in ~/bin/git, but I'm noticing some performance problems. My
>> shell prompt started coming back slower, especially in a large
>> monorepo.
>>
>> For example, inside said monorepo (apologies in advance; output is on
>> a computer I can't easily copy from):
>>
>> hyperfine -Ni -w10 {/usr/local,$HOME}/bin/git
>> …
>> /usr/local/bin/git ran 4.99 +/- 1.69 times faster than ~/bin/git
>>
>> The difference is 22ms +/- 6.5ms (15.3ms–56.3ms) compared to 109.7ms
>> +/- 17.8ms (91.1ms–159.9ms).
>>
>> My build recipe was
>>
>> export DEVELOPER=1
>> export XML_CATALOG_FILES=/usr/local/etc/xml/catalog
>> make -j "$(nproc)" all doc
>> make install install-doc install-html
>
> Interesting. It was suggested off-list that I should try building with
> CFLAGS=-Oz, which I'm having some trouble propagating (with V=1, I see
> some initial files built with -Oz and then later some with -O2??)Fixed this, which helped with the binary size…
> But on my other (non-corporate-managed) machine, I see almost no
> timing difference between a built Git and a Homebrew-installed Git. So
> I wonder if the corporate binary sniffer is causing problems…
…but not speed. Sigh. Assuming I can rule in or out the corporate parts, I’ll keep troubleshooting. Might try to install to the Homebrew paths just to see what happens. (I’m assuming the sniffer uses a fingerprint though and not just the path.)