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

Re: [PATCH 0/7] Better threaded delta resolution in index-pack (another try)

From
Jeff King <peff@peff.net>
Date
Aug 25, 2020, 21:46 UTC
Message-ID
<20200825214615.GA1476535@coredump.intra.peff.net>
In-Reply-To
<20200825211836.GA1448402@coredump.intra.peff.net>
On Tue, Aug 25, 2020 at 05:18:36PM -0400, Jeff King wrote:
Show 5 quoted lines
> Still maxes out at the number of physical cores (not unexpected, but
> that was the thing I was most curious about ;) ). I may run it on the
> 40-core machine, too. It's possible that with the new threading we're
> able to do better going past 20-threads. I doubt it, because I think
> it's mostly a function of Git's locking granularity, but worth checking.
For the curious (I know you were all on the edge of your seat):
  5302.3: index-pack 0 threads                    519.23(479.10+40.10) 
  5302.4: index-pack 1 threads                    525.94(476.27+49.64) 
  5302.5: index-pack 2 threads                    271.82(458.93+55.52) 
  5302.6: index-pack 5 threads                    115.88(463.84+50.69) 
  5302.7: index-pack 10 threads                   67.26(478.37+57.38)  
  5302.8: index-pack 20 threads                   43.02(524.01+77.33)  
  5302.9: index-pack 40 threads                   33.42(709.86+100.24) 
  5302.10: index-pack 80 threads                  32.02(1030.75+228.28)
  5302.11: index-pack default number of threads   43.58(551.13+68.92)  

So it actually does do a slight improvement to go from 20 to 40 threads on this repository/machine combo. Not enough to make me revise the code I sent the other day, though. And we still get nothing from going past the number of physical cores.

-Peff
Previous: Jeff KingNext: Jonathan Tan
Message 19 of 28 in “Better threaded delta resolution in index-pack (another try)”
  1. 0/7 Better threaded delta resolution in index-pack (another try)Jonathan Tan, Aug 24, 2020
  2. 1/7 Documentation: deltaBaseCacheLimit is per-threadJonathan Tan, Aug 24, 2020
  3. fetch-pack: in partial clone, pass --promisorJonathan Tan, Aug 24, 2020
  4. Jonathan TanAug 24, 2020
  5. 2/7 index-pack: remove redundant parameterJonathan Tan, Aug 24, 2020
  6. Junio C HamanoAug 24, 2020
  7. 3/7 index-pack: unify threaded and unthreaded codeJonathan Tan, Aug 24, 2020
  8. Junio C HamanoAug 24, 2020
  9. 5/7 index-pack: calculate {ref,ofs}_{first,last} earlyJonathan Tan, Aug 24, 2020
  10. 7/7 index-pack: make quantum of work smallerJonathan Tan, Aug 24, 2020
  11. Junio C HamanoAug 24, 2020
  12. 6/7 index-pack: make resolve_delta() assume base dataJonathan Tan, Aug 24, 2020
  13. 4/7 index-pack: remove redundant child fieldJonathan Tan, Aug 24, 2020
  14. Junio C HamanoAug 24, 2020
  15. fixup! index-pack: make quantum of work smallerJonathan Tan, Aug 24, 2020
  16. Jeff KingAug 24, 2020
  17. Jonathan TanAug 25, 2020
  18. Jeff KingAug 25, 2020
  19. Jeff KingAug 25, 2020
  20. 0/7 Better threaded delta resolution in index-pack (another try)Jonathan Tan, Sep 8, 2020
  21. 2/7 index-pack: remove redundant parameterJonathan Tan, Sep 8, 2020
  22. 3/7 index-pack: unify threaded and unthreaded codeJonathan Tan, Sep 8, 2020
  23. 7/7 index-pack: make quantum of work smallerJonathan Tan, Sep 8, 2020
  24. 6/7 index-pack: make resolve_delta() assume base dataJonathan Tan, Sep 8, 2020
  25. 5/7 index-pack: calculate {ref,ofs}_{first,last} earlyJonathan Tan, Sep 8, 2020
  26. 4/7 index-pack: remove redundant child fieldJonathan Tan, Sep 8, 2020
  27. 1/7 Documentation: deltaBaseCacheLimit is per-threadJonathan Tan, Sep 8, 2020
  28. Junio C HamanoSep 8, 2020

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.