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

[PATCH 0/2] split index extra bits

From
Christian Couder <christian.couder@gmail.com>
Date
May 5, 2017, 14:57 UTC
Message-ID
<20170505145713.8837-1-chriscool@tuxfamily.org>

This patch series contains 2 patches that have already been sent to the list but have felt through the cracks. It would be nice if they could be considered for v2.13.0.

Patch 1/2 (split-index: add and use unshare_split_index()) by Duy fixes a memory leak when a new shared index file is created and memory used by the old one should be freed.

Patch 2/2 (p3400: add perf tests for rebasing many changes) adds a test in t/perf that can help see what performance improvements can be gained by using the split index feature. For example using this patch at one point I got the following results on a Linux machine on the Git repository:

Test v2.10.0 v2.11.0 v2.12.0 origin/master ------------------------------------------------------------------------------------------------------------------------------------------------------------ 3400.2: rebase on top of a lot of unrelated changes 2.62(2.19+0.55) 2.54(2.15+0.49) -3.1% 2.59(2.19+0.49) -1.1% 2.66(2.27+0.52) +1.5% 3400.4: rebase a lot of unrelated changes without split-index 14.08(10.12+3.92) 7.20(5.85+1.36) -48.9% 8.06(6.54+1.60) -42.8% 7.53(6.40+1.12) -46.5% 3400.6: rebase a lot of unrelated changes with split-index 14.10(10.11+3.94) 6.94(5.71+1.27) -50.8% 7.99(6.49+1.57) -43.3% 6.10(5.12+1.07) -56.7%

On bigger repositories results are likely to be better.
Christian Couder (1):
  p3400: add perf tests for rebasing many changes
Nguyễn Thái Ngọc Duy (1):
  split-index: add and use unshare_split_index()
 read-cache.c           | 10 ++-------
 split-index.c          | 57 ++++++++++++++++++++++++++++++++++++++------------
 split-index.h          |  1 +
 t/perf/p3400-rebase.sh | 22 ++++++++++++++++++-
 4 files changed, 68 insertions(+), 22 deletions(-)
-- 
2.13.0.rc1.83.g83955d3ecd.dirty
Next: Christian Couder
Message 1 of 6 in “split index extra bits”
  1. 0/2 split index extra bitsChristian Couder, May 5, 2017
  2. 2/2 p3400: add perf tests for rebasing many changesChristian Couder, May 5, 2017
  3. 1/2 split-index: add and use unshare_split_index()Christian Couder, May 5, 2017
  4. Junio C HamanoMay 8, 2017
  5. Junio C HamanoMay 8, 2017
  6. Christian CouderMay 8, 2017

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.