From: Ben Peart Date: Mon, 29 Oct 2018 16:52:56 GMT Subject: Re: [PATCH 07/10] preload-index.c: remove #ifdef NO_PTHREADS Message-ID: <1217c887-cb15-87c6-649f-8b927abe8180@gmail.com> In-Reply-To: <20181027071003.1347-8-pclouds@gmail.com> On 10/27/2018 3:10 AM, Nguyễn Thái Ngọc Duy wrote: > Signed-off-by: Nguyễn Thái Ngọc Duy > --- > preload-index.c | 15 ++------------- > 1 file changed, 2 insertions(+), 13 deletions(-) > > diff --git a/preload-index.c b/preload-index.c > index 9e7152ab14..0e24886aca 100644 > --- a/preload-index.c > +++ b/preload-index.c > @@ -7,17 +7,7 @@ > #include "fsmonitor.h" > #include "config.h" > #include "progress.h" > - > -#ifdef NO_PTHREADS > -static void preload_index(struct index_state *index, > - const struct pathspec *pathspec, > - unsigned int refresh_flags) > -{ > - ; /* nothing */ > -} > -#else > - > -#include > +#include "thread-utils.h" > > /* > * Mostly randomly chosen maximum thread counts: we > @@ -108,7 +98,7 @@ static void preload_index(struct index_state *index, > struct thread_data data[MAX_PARALLEL]; > struct progress_data pd; > > - if (!core_preload_index) > + if (!HAVE_THREADS || !core_preload_index) I also "hoped in general that the non-threaded code paths could mostly just collapse into the same as the "threads == 1" cases, and we wouldn't have to "are threads even supported" in a lot of places." In this case, if we cap the threads to online_cpus() the later test for 'if (threads < 2)' would do that. I haven't measured this specific case but in the other cases I have measured, having more threads than cpus did not result in a performance win. > return; > > threads = index->cache_nr / THREAD_COST; > @@ -151,7 +141,6 @@ static void preload_index(struct index_state *index, > > trace_performance_leave("preload index"); > } > -#endif > > int read_index_preload(struct index_state *index, > const struct pathspec *pathspec, >