[PATCH 0/5] Optimization batch 12: miscellaneous unthemed stuff
- From
Elijah Newren via GitGitGadget <gitgitgadget@gmail.com>
- Date
- May 27, 2021, 08:37 UTC
- Message-ID
- <pull.962.git.1622104642.gitgitgadget@gmail.com>
This series depends on en/ort-perf-batch-11 textually, but is semantically independent of it.
This short series has a few optimizations, but only one of which affects the testcases of interest (namely, reducing our time spent on sorting an array). It also fixes a few comments.
For the testcases mentioned in commit 557ac0350d ("merge-ort: begin performance work; instrument with trace2_region_* calls", 2020-10-28), the changes in just this series improves the performance as follows:
Before Series After Series no-renames: 5.622 s ± 0.059 s 5.235 s ± 0.042 s mega-renames: 10.127 s ± 0.073 s 9.419 s ± 0.107 s just-one-mega: 500.3 ms ± 3.8 ms 480.1 ms ± 3.9 ms
As a reminder, before any merge-ort/diffcore-rename performance work, the performance results we started with were:
no-renames-am: 6.940 s ± 0.485 s no-renames: 18.912 s ± 0.174 s mega-renames: 5964.031 s ± 10.459 s just-one-mega: 149.583 s ± 0.751 s
Elijah Newren (5):
merge-ort: replace string_list_df_name_compare with faster alternative
diffcore-rename: avoid unnecessary strdup'ing in break_idx
diffcore-rename: enable limiting rename detection to relevant
destinations
Fix various issues found in comments
merge-ort: miscellaneous touch-upsdiffcore-rename.c | 52 ++++++++++++++++--- diffcore.h | 2 + merge-ort.c | 78 +++++++++++++++++++---------- t/t6423-merge-rename-directories.sh | 2 +- 4 files changed, 99 insertions(+), 35 deletions(-)
base-commit: 76e253793c9a1d7fdd1836d5e4db26dabd3d713a Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-962%2Fnewren%2Fort-perf-batch-12-v1 Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-962/newren/ort-perf-batch-12-v1 Pull-Request: https://github.com/gitgitgadget/git/pull/962
-- gitgitgadget