GNU bug report logs - #24689
Multithreaded grep Available

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: grep; Reported by: Aaron Zhou Qian <aaronzhouqian@HIDDEN>; dated Fri, 14 Oct 2016 15:36:02 UTC; Maintainer for grep is bug-grep@HIDDEN.

Message received at 24689 <at> debbugs.gnu.org:


Received: (at 24689) by debbugs.gnu.org; 10 Jan 2017 00:46:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jan 09 19:46:40 2017
Received: from localhost ([127.0.0.1]:48288 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1cQkaG-0005C2-AX
	for submit <at> debbugs.gnu.org; Mon, 09 Jan 2017 19:46:40 -0500
Received: from zimbra.cs.ucla.edu ([131.179.128.68]:55872)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <eggert@HIDDEN>) id 1cQkaE-0005Bo-Dq
 for 24689 <at> debbugs.gnu.org; Mon, 09 Jan 2017 19:46:39 -0500
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 8149B1600B6;
 Mon,  9 Jan 2017 16:46:32 -0800 (PST)
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id X7SeVwuj2meW; Mon,  9 Jan 2017 16:46:31 -0800 (PST)
Received: from localhost (localhost [127.0.0.1])
 by zimbra.cs.ucla.edu (Postfix) with ESMTP id 0CE1C1600BD;
 Mon,  9 Jan 2017 16:46:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu
Received: from zimbra.cs.ucla.edu ([127.0.0.1])
 by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id kVPGvXYLItSr; Mon,  9 Jan 2017 16:46:30 -0800 (PST)
Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200])
 by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id E95141600B3;
 Mon,  9 Jan 2017 16:46:30 -0800 (PST)
Subject: Fwd: bug#22239: New Project
References: <CANbv7+zL0vyktnnuLZ9MHwFV1M9xSDR69MaWda1hfHS4Ug_myw@HIDDEN>
To: Aaron Zhou Qian <aaronzhouqian@HIDDEN>
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
X-Forwarded-Message-Id: <CANbv7+zL0vyktnnuLZ9MHwFV1M9xSDR69MaWda1hfHS4Ug_myw@HIDDEN>
Message-ID: <b2b43a3b-1aea-35f3-8ff2-0cdd106bb93d@HIDDEN>
Date: Mon, 9 Jan 2017 16:46:30 -0800
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.6.0
MIME-Version: 1.0
In-Reply-To: <CANbv7+zL0vyktnnuLZ9MHwFV1M9xSDR69MaWda1hfHS4Ug_myw@HIDDEN>
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: 7bit
X-Spam-Score: -3.2 (---)
X-Debbugs-Envelope-To: 24689
Cc: 24689 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -3.2 (---)

Oops, sorry, I gave you the wrong bug number. I am forwarding this to
Bug#24689, which is what I should have told you in the first place.


-------- Forwarded Message --------
Subject: 	bug#22239: New Project
Resent-Date: 	Sun, 08 Jan 2017 06:05:02 +0000
Resent-From: 	Aaron Zhou Qian <aaronzhouqian@HIDDEN>
Resent-CC: 	bug-grep@HIDDEN
Date: 	Sat, 7 Jan 2017 22:04:00 -0800
From: 	Aaron Zhou Qian <aaronzhouqian@HIDDEN>
To: 	Paul Eggert <eggert@HIDDEN>, 22239 <at> debbugs.gnu.org



On Sat, Jan 7, 2017 at 9:29 AM, Paul Eggert <eggert@HIDDEN> wrote:
>
> Could you remind us about the latest status of your proposal compared to
> Zev Weiss's? Does <http://bugs.gnu.org/24689> contain the latest thing
> you have? Zev Weiss's latest version is at <https://github.com/zevweiss/g
> rep>. Comparing the two was the thing Jim Meyering asked for at <
> http://bugs.gnu.org/22239#8>, and you can follow up by sending email to
> 22239 <at> debbugs.gnu.org.




Yes that github link is the latest version. I haven't made any changes to
that since last year September.

Basically the main thread traverses the file tree and assign the file to be
searched to each thread. There is also a dynamic buffer so that the output
is identical to the original grep program.

I tested the program on a server. On a directory containing 4 files, grep -r
on that directory is 4 times faster. On a directory containing 8 files, grep -r
is 6 times faster. On a directory containing 12 files, grep -r is 8.5 times
faster.

I think using multithreading is essentially different from not using
multithreading, and we also don't use multithreading all the time for grep.
When we're not using multithreading, i.e. when we pass in other options for
grep, more functions  would call those functions whose function signatures
we changed. This is hard to keep track of, because the program is fairly
complicated.

If we had overloading in C++ I would overload those functions. But since we
don't, I made it very clear in the code which functions are the
counterparts of the original versions. I did this to contain any potential
problems so that if there are any problems with multithreading it would not
affect the sequential program, whereas if we interleave the two scenarios
we might lose track of what's going on. At least this is what I initially
thought.

I saw that there were some recent commits by Zev together with Jim, for
example:

in

commit 9365ed6536d4fabf42ec17fef1bbe5d78884f950

* src/grep.c (compile_fp_t): Now returns an opaque pointer (the
compiled pattern).
(execute_fp_t): Now passed the pointer returned by a compile_fp_t.
All call sites updated accordingly.
(compiled_pattern): New static variable.
* src/dfasearch.c (GEAcompile): Return a void pointer (dummy NULL).
(EGexecute): Receive a void pointer argument (unused).
* src/kwsearch.c (Fcompile): Return a void pointer (dummy NULL).
(Fexecute): Receive a void pointer argument (unused).
* src/pcresearch.c (Pcompile): Return a void pointer (dummy NULL).
(Pexecute): Receive a void pointer argument (unused).
* src/search.h: Update compile/execute function prototypes.

So we have different approaches. They are trying to add extra pointer
arguments for the multithreading case. The pointer argument would be
NULL in the case multithreading is not in effect.  Whereas my approach
is to replicate the functions so the counterparts of the original
functions are used in the multithreading scenario. This was done in an
attempt to reduce the complexity of each of the functions and make the
program less monolithic. I leave you guys to decide.





Information forwarded to bug-grep@HIDDEN:
bug#24689; Package grep. Full text available.

Message received at 24689 <at> debbugs.gnu.org:


Received: (at 24689) by debbugs.gnu.org; 15 Oct 2016 05:04:21 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Oct 15 01:04:21 2016
Received: from localhost ([127.0.0.1]:57405 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bvH8v-0008FV-6Y
	for submit <at> debbugs.gnu.org; Sat, 15 Oct 2016 01:04:21 -0400
Received: from mail-io0-f196.google.com ([209.85.223.196]:35552)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <meyering@HIDDEN>) id 1bvH8t-0008FI-Nk
 for 24689 <at> debbugs.gnu.org; Sat, 15 Oct 2016 01:04:20 -0400
Received: by mail-io0-f196.google.com with SMTP id p26so7851989ioo.2
 for <24689 <at> debbugs.gnu.org>; Fri, 14 Oct 2016 22:04:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=mime-version:sender:in-reply-to:references:from:date:message-id
 :subject:to:cc;
 bh=2bWF6oV+UH/p7Ja+eBjt9HYohFUwsDWINXoCvs9/Tuk=;
 b=lQ9yg2JOmvMDDjYzLqi06FCc61LaSgZAKzfBa1kj9wWgEq0ZfJwZnC/MyISB+N1S1B
 U/8MCiPLmxGQYM5QMKffP6pB4oI0CRFid3MpntoY+fVnYxnczpEpYxni3a1YmmZtKqe1
 lFZIcB3lxqWu++ii5QAcPNbXMtSSVy9CUpWjf5R6K42YA4kX0+hfEKjfkgdHpodXG1mo
 iqPOTpUlo7J/0/SVxa6JuvddlMk0F/6DjpAXBGZEjj8mCjEmYwlAmQpTec3sYvivkpo2
 yaInoxvlWmjoT3q3ctlGwIT/OLVb5Fql0o5JOb9pu6F8Cn4OCti/Y1S+S8EI2Ne4NBk8
 5XFA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:sender:in-reply-to:references:from
 :date:message-id:subject:to:cc;
 bh=2bWF6oV+UH/p7Ja+eBjt9HYohFUwsDWINXoCvs9/Tuk=;
 b=DrHLYN+89Owgcryo169udShDmI6yZKNT8Uay3RwEou9QQKuttvOpKos6UopZ6lTARh
 JaBV1HMt8uovwc/ndQdqMTCRQ340a1Z79gkvnyH6Ciqyo5s1Yc44fRkwQMnWjrlHNeOU
 3Eg4JY+eojyFT9788JrbDY7VUMrp9zJIP3DRB0TwhfRBD/2ntDRfYX4Ny4MhaR/E42Y6
 wbZSCA97LdiXJVr589W+h+ykF2aXUZPWPH4qYrsf2tfQV0/IOrsso2gooAnwq2zy6Vpv
 WDoEhgYDxvU+fPReQwTlNvwSJu7ImU1QnDGyxENkdoytEJ3WvAFSQghtoHH3W/YQXZtt
 TZKA==
X-Gm-Message-State: AA6/9RkkRZJt8OF4o0xdZ1SEqCmWR8F27zw2ziAab6+rnbZBTSZu9A/3bx53LJ2I4oAjC4qVMBU+q+YX0mPRQw==
X-Received: by 10.107.132.88 with SMTP id g85mr14897376iod.29.1476507853942;
 Fri, 14 Oct 2016 22:04:13 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.107.8.217 with HTTP; Fri, 14 Oct 2016 22:03:52 -0700 (PDT)
In-Reply-To: <CANbv7+w+_MSTUePP8HDBvHXYd03saEOrC2SOxjTtmas1UEDtxA@HIDDEN>
References: <CANbv7+w+_MSTUePP8HDBvHXYd03saEOrC2SOxjTtmas1UEDtxA@HIDDEN>
From: Jim Meyering <jim@HIDDEN>
Date: Fri, 14 Oct 2016 22:03:52 -0700
X-Google-Sender-Auth: SG6ScyUuDvnHKrC7OXVb4QU6jG4
Message-ID: <CA+8g5KFqZTphGWwMrRx=sfV_OH3wZsGc224v-_dtHoXsxg-Mfg@HIDDEN>
Subject: Re: bug#24689: Multithreaded grep Available
To: Aaron Zhou Qian <aaronzhouqian@HIDDEN>, Zev Weiss <zev@HIDDEN>
Content-Type: text/plain; charset=UTF-8
X-Spam-Score: 0.5 (/)
X-Debbugs-Envelope-To: 24689
Cc: 24689 <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: 0.5 (/)

On Fri, Oct 14, 2016 at 8:14 AM, Aaron Zhou Qian <aaronzhouqian@HIDDEN> wrote:
> Hi,
>
> I've multithreaded the grep at the file granularity when used with -r or -R
> on directories. The four files that I changed i.e. grep.c dosbuff.c
> dfasearch.c search.h under src/ is in this repository:
>
> https://github.com/AaronZhouQian/grep
>
> Please take a look at the README there.
>
>
> The default number of threads is the number of cores online in the system.
>
> To specify a custom number of threads use -p or --parallel followed by the
> number of threads.
>
> Currently multithreading does not support context i.e. -A -B -C
>
>
> I'd like to invite everyone to test this patch.

Thank you for working on that.
Before even looking at your patch, I have to ask whether you have
filed copyright assignment papers with the FSF. If not, I can get you
started.

Secondly, did you know that Zev Weiss has submitted some patches to
make grep multithreaded? He also helped to make dfa.c (now in gnulib)
multithread safe recently. It's been a while, and I don't know the
status of his patch set. At a minimum, please tell us how your
approach compares to his. https://github.com/zevweiss/grep




Information forwarded to bug-grep@HIDDEN:
bug#24689; Package grep. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 14 Oct 2016 15:35:16 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Oct 14 11:35:16 2016
Received: from localhost ([127.0.0.1]:55439 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1bv4Vt-0004Gg-3I
	for submit <at> debbugs.gnu.org; Fri, 14 Oct 2016 11:35:16 -0400
Received: from eggs.gnu.org ([208.118.235.92]:59605)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4CQ-0003km-Nc
 for submit <at> debbugs.gnu.org; Fri, 14 Oct 2016 11:15:10 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4CG-0001rW-LD
 for submit <at> debbugs.gnu.org; Fri, 14 Oct 2016 11:15:01 -0400
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org
X-Spam-Level: 
X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_20,HTML_MESSAGE,
 T_DKIM_INVALID autolearn=disabled version=3.3.2
Received: from lists.gnu.org ([2001:4830:134:3::11]:33802)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4CG-0001qP-Hq
 for submit <at> debbugs.gnu.org; Fri, 14 Oct 2016 11:14:56 -0400
Received: from eggs.gnu.org ([2001:4830:134:3::10]:50551)
 by lists.gnu.org with esmtp (Exim 4.71)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4CA-0002B1-EO
 for bug-grep@HIDDEN; Fri, 14 Oct 2016 11:14:55 -0400
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4C4-0001jc-I2
 for bug-grep@HIDDEN; Fri, 14 Oct 2016 11:14:49 -0400
Received: from mail-yw0-x22e.google.com ([2607:f8b0:4002:c05::22e]:33476)
 by eggs.gnu.org with esmtp (Exim 4.71)
 (envelope-from <aaronzhouqian@HIDDEN>) id 1bv4C4-0001jJ-9l
 for bug-grep@HIDDEN; Fri, 14 Oct 2016 11:14:44 -0400
Received: by mail-yw0-x22e.google.com with SMTP id t192so77060984ywf.0
 for <bug-grep@HIDDEN>; Fri, 14 Oct 2016 08:14:43 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=ucla-edu.20150623.gappssmtp.com; s=20150623;
 h=mime-version:from:date:message-id:subject:to;
 bh=XLGwa7nevgA98wq/Af745dRkEgAT4csraIzY6YHES2o=;
 b=auGKCXQ8hmoP02/DHYzQiv8kADJMTStZAr7QteDaa59X3RPULkskBJdzLMLA0pqdJe
 MHERSZ0r0uj+Gj/1vT7fLKpqQNK3hSLSWa/66i+SexK8MdL2JW+BTLuxHvvIFm+ABBfl
 3f1NmDxbzMERhB1fpoGXEJagUl9KtuNRJhoyefNYc31/whQsLj2rWjEBp0TT6lWT24T/
 Tvv6zmGk3TRTeY5tf900WuTe9yNnOc9LqAwyPI72Pwi3J+Q4AFssZLEnFmOhyoKDY3Wl
 dS6n7uUSh7s2nKoqMiUYcIOPxRudXp664XFhUlnPcYvMzQ0GAeyrlkS2rx5cw88SwS1u
 p/Ug==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:from:date:message-id:subject:to;
 bh=XLGwa7nevgA98wq/Af745dRkEgAT4csraIzY6YHES2o=;
 b=CZmQtY32LsmXRZ7uQDhHKDpkv90WWZXmDkETOgZ3Dl0N9MGrw8FX/wcO1exBVtFlfL
 CUnh3cBkEnMCRQ+HaFBf1z4smGftc9LyTrqXkWefk9QhnemiX8I5iEPu+as2jaseDAqX
 lmsygvS4MD+IwAstCrAL0bVJfGxJsO7482AtQIUlUe5TzMKL7hOhawwytz0lFKJSlTnk
 I1EZibzZOXifUCmQTNwIEZuXlJejY0BelGK5kv9fh9Ol+7tAuPrJ+VVLVQizqkOVxj9n
 Za4wdQojf81cbnXWXAJhfqT7hlACB6/Xh2YSvBuFypWBrTPizKkOZGlB4sbXr/ZqzV88
 fKNA==
X-Gm-Message-State: AA6/9RmHORKSZrqk/V0jwHyc/LHa1AJYMjgd3sftvf8D2V2dKrOooRVI1oCLffg74OSKDnikOkaktqIXDVSgWHeR
X-Received: by 10.129.154.211 with SMTP id r202mr11114844ywg.292.1476458083217; 
 Fri, 14 Oct 2016 08:14:43 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.37.199.139 with HTTP; Fri, 14 Oct 2016 08:14:42 -0700 (PDT)
From: Aaron Zhou Qian <aaronzhouqian@HIDDEN>
Date: Fri, 14 Oct 2016 08:14:42 -0700
Message-ID: <CANbv7+w+_MSTUePP8HDBvHXYd03saEOrC2SOxjTtmas1UEDtxA@HIDDEN>
Subject: Multithreaded grep Available
To: bug-grep@HIDDEN
Content-Type: multipart/alternative; boundary=94eb2c0b6d6a939f89053ed4afb0
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic]
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x
X-Received-From: 2001:4830:134:3::11
X-Spam-Score: -4.4 (----)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Fri, 14 Oct 2016 11:35:12 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -4.4 (----)

--94eb2c0b6d6a939f89053ed4afb0
Content-Type: text/plain; charset=UTF-8

Hi,

I've multithreaded the grep at the file granularity when used with -r or -R
on directories. The four files that I changed i.e. grep.c dosbuff.c
dfasearch.c search.h under src/ is in this repository:

https://github.com/AaronZhouQian/grep

Please take a look at the README there.


The default number of threads is the number of cores online in the system.

To specify a custom number of threads use -p or --parallel followed by the
number of threads.

Currently multithreading does not support context i.e. -A -B -C


I'd like to invite everyone to test this patch.


Thank you,

Aaron

--94eb2c0b6d6a939f89053ed4afb0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><font face=3D"arial, helvetica, sans-serif">Hi,</font><div=
><font face=3D"arial, helvetica, sans-serif"><br></font></div><div><font fa=
ce=3D"arial, helvetica, sans-serif">I&#39;ve multithreaded the grep at the =
file granularity when used with -r or -R on directories. The four files tha=
t I changed i.e.=C2=A0<span style=3D"color:rgb(51,51,51)"><font size=3D"3">=
grep.c dosbuff.c dfasearch.c search.h </font>under src/<font size=3D"3">=C2=
=A0</font></span>is in this repository:=C2=A0</font></div><div><font face=
=3D"arial, helvetica, sans-serif"><br></font></div><div><font face=3D"arial=
, helvetica, sans-serif" size=3D"4"><a href=3D"https://github.com/AaronZhou=
Qian/grep">https://github.com/AaronZhouQian/grep</a></font></div><div><font=
 face=3D"arial, helvetica, sans-serif"><br></font></div><div><font face=3D"=
arial, helvetica, sans-serif">Please take a look at the README there.=C2=A0=
</font></div><div><p style=3D"box-sizing:border-box;margin-top:0px;margin-b=
ottom:16px;color:rgb(51,51,51)"><br></p><p style=3D"box-sizing:border-box;m=
argin-top:0px;margin-bottom:16px;color:rgb(51,51,51)">The d<span style=3D"f=
ont-family:arial,helvetica,sans-serif">efault number of threads is the numb=
er of cores online in the system.</span><br></p><p style=3D"box-sizing:bord=
er-box;margin-top:0px;margin-bottom:16px;color:rgb(51,51,51)"><font face=3D=
"arial, helvetica, sans-serif">To specify a custom number of threads use -p=
 or --parallel followed by the number of threads.</font></p><p style=3D"box=
-sizing:border-box;margin-top:0px;color:rgb(51,51,51);margin-bottom:0px"><f=
ont face=3D"arial, helvetica, sans-serif">Currently multithreading does not=
 support context i.e. -A -B -C</font></p><p style=3D"box-sizing:border-box;=
margin-top:0px;color:rgb(51,51,51);margin-bottom:0px"><font face=3D"arial, =
helvetica, sans-serif"><br></font></p><p style=3D"box-sizing:border-box;mar=
gin-top:0px;color:rgb(51,51,51);margin-bottom:0px"><font face=3D"arial, hel=
vetica, sans-serif">I&#39;d like to invite everyone to test this patch.</fo=
nt></p><p style=3D"box-sizing:border-box;margin-top:0px;color:rgb(51,51,51)=
;margin-bottom:0px"><font face=3D"arial, helvetica, sans-serif"><br></font>=
</p><p style=3D"box-sizing:border-box;margin-top:0px;color:rgb(51,51,51);ma=
rgin-bottom:0px"><font face=3D"arial, helvetica, sans-serif">Thank you,</fo=
nt></p><p style=3D"box-sizing:border-box;margin-top:0px;color:rgb(51,51,51)=
;margin-bottom:0px"><font face=3D"arial, helvetica, sans-serif">Aaron</font=
></p></div></div>

--94eb2c0b6d6a939f89053ed4afb0--




Acknowledgement sent to Aaron Zhou Qian <aaronzhouqian@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-grep@HIDDEN. Full text available.
Report forwarded to bug-grep@HIDDEN:
bug#24689; Package grep. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Mon, 25 Nov 2019 12:00:02 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.