git-repo/subcmds
Mike Frysinger 13cb7f799d forall: greatly speed up processing overhead
With the recent commit 0501b29e7a
("status: Use multiprocessing for `repo status -j<num>` instead of
threading"), the limitation with project serialization no longer
applies.  It turns out that ad-hoc logic is expensive.  In the CrOS
checkout (~1000 projects w/8 jobs by default), it adds about ~7sec
overhead to all invocations.  With a fast nop run:
	time repo forall -j8 -c true
This goes from ~11sec to ~4sec -- more than 50% speedup.

Change-Id: Ie6bcccd21eef20440692751b7ebd36c890d5bbcc
Reviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/298724
Reviewed-by: Michael Mortensen <mmortensen@google.com>
Tested-by: Mike Frysinger <vapier@google.com>
2021-03-01 15:58:06 +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 checkout: add --jobs support 2021-02-27 19:56:24 +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 download: handle shared projects a bit better 2021-03-01 15:57:17 +00:00
forall.py forall: greatly speed up processing overhead 2021-03-01 15:58:06 +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