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

Merge ORT performance in the wild

From
Derrick Stolee <stolee@gmail.com>
Date
Oct 5, 2021, 19:42 UTC
Message-ID
<9e4411aa-e757-0653-0c2a-24894b13158f@gmail.com>
Hello all, especially Elijah.

We finally shipped Git 2.33.0 (with VFS for Git) to the Windows OS engineers, and the microsoft/git fork enables the ORT merge strategy by default in this version.

I know that we are queued to include the ORT merge strategy as on by default in Git 2.34.0, and to further support that change (and thank Elijah for working hard on the feature), I wanted to share some early data on our users interacting with it.

We have about 250 users who have upgraded, relative to ~2,300 users who were active on the previous version. However, we saw sufficiently high use of 'git cherry-pick' and 'git merge' in these early users to share these results for how they are experiencing the new world:

| Builtin     | Percentile | Recursive | ORT   |
|-------------|------------|-----------|-------|
| cherry-pick | 50         |  18.4s    | 14.1s |
| cherry-pick | 80         |  34.9s    | 15.4s |
| cherry-pick | 95         | 117.9s    | 17.7s |
| merge       | 50         |   7.7s    |  1.2s |
| merge       | 80         |  17.9s    | 12.7s |
| merge       | 95         |  58.9s    | 22.3s |

This matches the results from a synthetic performance test I ran in our monorepos: ORT is always faster, but its outlier performance is far faster than the outlier performance of the 'recursive' strategy.

Thanks! -Stolee

Next: Elijah Newren
Message 1 of 2 in “Merge ORT performance in the wild”
  1. Derrick StoleeOct 5, 2021
  2. Elijah NewrenOct 6, 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.