git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] read-cache: make the index write buffer size 128K

From
Chris Torek <chris.torek@gmail.com>
Date
Feb 25, 2021, 06:58 UTC
Message-ID
<CAPx1GvdA1prtO+y-bJ7yu8oZP6Lp9mHQ5gv-fXvS193NFospkA@mail.gmail.com>
In-Reply-To
<xmqqmtvswvp7.fsf@gitster.g>
Show 12 quoted lines
> Neeraj Singh <nksingh85@gmail.com> writes:
> > I collected data from an experiment with different buffer sizes on Windows on my
> > 3.6Ghz Xeon W-2133 machine:
> > https://docs.google.com/spreadsheets/d/1Bu6pjp53NPDK6AKQI_cry-hgxEqlicv27dptoXZYnwc/edit?usp=sharing
> >
> > The timing is pretty much in the noise after we pass 32K.  So I think
> > 8K is too small, but
> > given the flatness of the curve we can feel good about any value above
> > 32K from a performance
> > perspective.  I still think 128K is a decent number that won't likely
> > need to be changed for
> > some time.

Linux/BSD/etc `stat` system calls report st_blksize values to tell user code the optimal size for read and write calls. Does Windows have one? (It's not POSIX but is XSI.)

(How *well* the OS reports `st_blksize` is another question entirely, but at least if the report says, say, 128k, and that's wrong, that's no longer Git's fault. :-) )

On Wed, Feb 24, 2021 at 10:46 PM Junio C Hamano <gitster@pobox.com> wrote:
Show 9 quoted lines
> Thanks for a supporting graph.
>
> I can very well imagine that it would have been tempting to instead
> say "after we pass 128k" while explaining exactly the same graph,
> and doing so would have given a more coherent argument to support
> the choice of 128k the patch made.  You knew that a "then perhaps we
> can reclaim 96k by sizing the buffer down a bit?" would become a
> reasonable response, but you still chose to be honest, which I kinda
> like ;-)

128K is correct for ZFS; 64K is typically correct for UFS2; 8K is the old UFS1 size. Anything under that has been too small for a long time. :-)

Chris
Previous: Junio C HamanoNext: Junio C Hamano
Message 8 of 11 in “read-cache: make the index write buffer size 128K”
  1. read-cache: make the index write buffer size 128KNeeraj K. Singh via GitGitGadget, Feb 18, 2021
  2. Jeff HostetlerFeb 19, 2021
  3. Junio C HamanoFeb 20, 2021
  4. Neeraj SinghFeb 20, 2021
  5. Junio C HamanoFeb 21, 2021
  6. Neeraj SinghFeb 24, 2021
  7. Junio C HamanoFeb 25, 2021
  8. Chris TorekFeb 25, 2021
  9. Junio C HamanoFeb 25, 2021
  10. Neeraj SinghFeb 25, 2021
  11. Chris TorekFeb 25, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.