Mercurial > hg
comparison mercurial/streamclone.py @ 51587:8cd317c033b8
stream-clone: disable gc for the entry listing section for the v2 format
This is similar to the change we did for the v3 format in 6e4c8366c5ce.
The benchmark bellow show this gives us a notable gains, especially on larger
repositories.
### benchmark.name = hg.perf.stream-locked-section
# benchmark.name = hg.perf.stream-locked-section
# bin-env-vars.hg.flavor = default
# bin-env-vars.hg.py-re2-module = default
# benchmark.variants.version = v2
## data-env-vars.name = pypy-2018-08-01-zstd-sparse-revlog
5e931bf8707c: 0.503820 ~~~~~
1106d1bf695e: 0.470078 (-6.70%, -0.03)
## data-env-vars.name = pypy-2024-03-22-zstd-sparse-revlog
5e931bf8707c: 0.535756 ~~~~~
1106d1bf695e: 0.490249 (-8.49%, -0.05)
## data-env-vars.name = heptapod-public-2024-03-25-zstd-sparse-revlog
5e931bf8707c: 1.327041 ~~~~~
1106d1bf695e: 1.174636 (-11.48%, -0.15)
## data-env-vars.name = netbeans-2018-08-01-zstd-sparse-revlog
5e931bf8707c: 2.439158 ~~~~~
1106d1bf695e: 2.220515 (-8.96%, -0.22)
## data-env-vars.name = netbeans-2019-11-07-zstd-sparse-revlog
5e931bf8707c: 2.630794 ~~~~~
1106d1bf695e: 2.261473 (-14.04%, -0.37)
## data-env-vars.name = mozilla-central-2018-08-01-zstd-sparse-revlog
5e931bf8707c: 5.769002 ~~~~~
1106d1bf695e: 5.062000 (-12.26%, -0.71)
## data-env-vars.name = mozilla-try-2019-02-18-zstd-sparse-revlog
5e931bf8707c: 13.351750 ~~~~~
1106d1bf695e: 12.346655 (-7.53%, -1.01)
## data-env-vars.name = mozilla-central-2024-03-22-zstd-sparse-revlog
5e931bf8707c: 10.772939 ~~~~~
1106d1bf695e: 9.495407 (-11.86%, -1.28)
## data-env-vars.name = mozilla-unified-2024-03-22-zstd-sparse-revlog
5e931bf8707c: 10.864297 ~~~~~
1106d1bf695e: 9.475597 (-12.78%, -1.39)
## data-env-vars.name = mozilla-try-2023-03-22-zstd-sparse-revlog
5e931bf8707c: 17.448335 ~~~~~
1106d1bf695e: 16.027474 (-8.14%, -1.42)
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Sun, 14 Apr 2024 02:33:36 +0200 |
parents | 49faa72b994e |
children | 493034cc3265 |
comparison
equal
deleted
inserted
replaced
51586:1cef1412af3e | 51587:8cd317c033b8 |
---|---|
644 # translate the vfs one | 644 # translate the vfs one |
645 entries = [(vfs_key, vfsmap[vfs_key], e) for (vfs_key, e) in entries] | 645 entries = [(vfs_key, vfsmap[vfs_key], e) for (vfs_key, e) in entries] |
646 | 646 |
647 max_linkrev = len(repo) | 647 max_linkrev = len(repo) |
648 file_count = totalfilesize = 0 | 648 file_count = totalfilesize = 0 |
649 # record the expected size of every file | 649 with util.nogc(): |
650 for k, vfs, e in entries: | 650 # record the expected size of every file |
651 for f in e.files(): | 651 for k, vfs, e in entries: |
652 file_count += 1 | 652 for f in e.files(): |
653 totalfilesize += f.file_size(vfs) | 653 file_count += 1 |
654 totalfilesize += f.file_size(vfs) | |
654 | 655 |
655 progress = repo.ui.makeprogress( | 656 progress = repo.ui.makeprogress( |
656 _(b'bundle'), total=totalfilesize, unit=_(b'bytes') | 657 _(b'bundle'), total=totalfilesize, unit=_(b'bytes') |
657 ) | 658 ) |
658 progress.update(0) | 659 progress.update(0) |