diff --git a/mercurial/configitems.py b/mercurial/configitems.py --- a/mercurial/configitems.py +++ b/mercurial/configitems.py @@ -623,6 +623,9 @@ coreconfigitem('experimental', 'web.api.debugreflect', default=False, ) +coreconfigitem('experimental', 'worker.wdir-get-cpu-heavy', + default=True, +) coreconfigitem('experimental', 'xdiff', default=False, ) diff --git a/mercurial/merge.py b/mercurial/merge.py --- a/mercurial/merge.py +++ b/mercurial/merge.py @@ -1637,9 +1637,11 @@ wctx[f0].remove() progress.increment(item=f) - # get in parallel + # get in parallel. + cpuheavy = repo.ui.configbool('experimental', 'worker.wdir-get-cpu-heavy') prog = worker.worker(repo.ui, cost, batchget, (repo, mctx, wctx), - actions[ACTION_GET]) + actions[ACTION_GET], + cpuheavy=cpuheavy) for i, item in prog: progress.increment(step=i, item=item) updated = len(actions[ACTION_GET])