git-repo/subcmds
Mike Frysinger ebf04a4404 sync: switch local checkout to multiprocessing
This avoids GIL limitations with using threads for parallel processing.
In a CrOS checkout with ~1000 repos, the nop case goes from ~6 sec down
to ~4 sec with -j8.  Not a big deal, but shows that this actually works
to speed things up unlike the threading model.

This reworks the checkout logic to return results for processing in the
main thread instead of leaving every thread to do its own processing.

Bug: https://crbug.com/gerrit/12389
Change-Id: I143e5e3f7158e83ea67e2d14e5552153a874248a
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/298063
Reviewed-by: Chris Mcdonald <cjmcdonald@google.com>
Tested-by: Mike Frysinger <vapier@google.com>
2021-02-27 19:55:14 +00:00
..
__init__.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
abandon.py abandon/start: add --jobs support 2021-02-27 19:45:14 +00:00
branches.py status: improve parallel execution stability 2021-02-22 22:51:34 +00:00
checkout.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
cherry_pick.py git_command: rework stdin handling 2021-02-17 15:15:16 +00:00
diff.py diff: add --jobs support 2021-02-23 00:31:27 +00:00
diffmanifests.py diffmanifests/sync: simplify repodir lookup 2021-02-11 02:38:53 +00:00
download.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
forall.py forall: rewrite parallel logic 2021-02-22 22:58:30 +00:00
gitc_delete.py drop pyversion & is_python3 checking 2021-01-06 18:53:58 +00:00
gitc_init.py use simpler super() magic 2021-02-19 20:06:20 +00:00
grep.py grep: move nested func out to the class 2021-02-25 20:13:33 +00:00
help.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
info.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
init.py init: support -b HEAD as a shortcut to "the default" 2021-02-25 20:12:51 +00:00
list.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
manifest.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
overview.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
prune.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
rebase.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
selfupdate.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
smartsync.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
stage.py strip python2-only coding:utf-8 & print_function settings 2021-01-06 18:53:05 +00:00
start.py abandon/start: add --jobs support 2021-02-27 19:45:14 +00:00
status.py status: improve parallel execution stability 2021-02-22 22:51:34 +00:00
sync.py sync: switch local checkout to multiprocessing 2021-02-27 19:55:14 +00:00
upload.py drop pyversion & is_python3 checking 2021-01-06 18:53:58 +00:00
version.py version: add remote tracking information 2021-01-08 20:41:27 +00:00