Re: [PATCH 4/2] grep: turn off threading for non-worktree
- From
René Scharfe <rene.scharfe@lsrfire.ath.cx>
- Date
- Dec 7, 2011, 17:00 UTC
- Message-ID
- <4EDF9BA0.2080204@lsrfire.ath.cx>
- In-Reply-To
- <201112070912.54766.trast@student.ethz.ch>
Am 07.12.2011 09:12, schrieb Thomas Rast:
Show 20 quoted lines
> René Scharfe wrote: >> diff --git a/Documentation/git-grep.txt b/Documentation/git-grep.txt >> index 47ac188..e981a9b 100644 >> --- a/Documentation/git-grep.txt >> +++ b/Documentation/git-grep.txt >> @@ -228,8 +228,9 @@ OPTIONS >> there is a match and with non-zero status when there isn't. >> >> --threads <n>:: >> + Run <n> search threads in parallel. Default is 8 when searching >> + the worktree and 0 otherwise. This option is ignored if git was >> + built without support for POSIX threads. > [...] >> - nr_threads = (online_cpus() > 1) ? THREADS : 0; >> + nr_threads = (online_cpus() > 1 && !list.nr) ? THREADS : 0; > > It would be more consistent to stick to the pack.threads convention > where 0 means "all of my cores", so to disable threading the user > would set the number of threads to 1. Or were you trying to measure > the contention between the worker thread and the add_work() thread?
Yes, indeed, the cost for the threading overhead does interest me. The documentation should perhaps mention --no-threads explicitly to avoid confusion.
Currently there is no way to specify "as many threads as there are cores" here. Previous measurements indicated that it wasn't too useful, however, because I/O parallelism was beneficial even for machines with less than eight cores and more threads didn't pay off.
René