X-Loop: help-debbugs@HIDDEN Subject: bug#24689: Multithreaded grep Available Resent-From: Aaron Zhou Qian <aaronzhouqian@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-grep@HIDDEN Resent-Date: Fri, 14 Oct 2016 15:36:02 +0000 Resent-Message-ID: <handler.24689.B.147645931616418 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 24689 X-GNU-PR-Package: grep X-GNU-PR-Keywords: To: 24689 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-grep@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.147645931616418 (code B ref -1); Fri, 14 Oct 2016 15:36:02 +0000 Received: (at submit) by debbugs.gnu.org; 14 Oct 2016 15:35:16 +0000 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> 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-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'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'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--
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Aaron Zhou Qian <aaronzhouqian@HIDDEN> Subject: bug#24689: Acknowledgement (Multithreaded grep Available) Message-ID: <handler.24689.B.147645931616418.ack <at> debbugs.gnu.org> References: <CANbv7+w+_MSTUePP8HDBvHXYd03saEOrC2SOxjTtmas1UEDtxA@HIDDEN> X-Gnu-PR-Message: ack 24689 X-Gnu-PR-Package: grep Reply-To: 24689 <at> debbugs.gnu.org Date: Fri, 14 Oct 2016 15:36:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-grep@HIDDEN If you wish to submit further information on this problem, please send it to 24689 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 24689: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D24689 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#24689: Multithreaded grep Available Resent-From: Jim Meyering <jim@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-grep@HIDDEN Resent-Date: Sat, 15 Oct 2016 05:05:01 +0000 Resent-Message-ID: <handler.24689.B24689.147650786131718 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 24689 X-GNU-PR-Package: grep X-GNU-PR-Keywords: To: Aaron Zhou Qian <aaronzhouqian@HIDDEN>, Zev Weiss <zev@HIDDEN> Cc: 24689 <at> debbugs.gnu.org Received: via spool by 24689-submit <at> debbugs.gnu.org id=B24689.147650786131718 (code B ref 24689); Sat, 15 Oct 2016 05:05:01 +0000 Received: (at 24689) by debbugs.gnu.org; 15 Oct 2016 05:04:21 +0000 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> Content-Type: text/plain; charset=UTF-8 X-Spam-Score: 0.5 (/) 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
X-Loop: help-debbugs@HIDDEN Subject: bug#24689: Fwd: bug#22239: New Project Resent-From: Paul Eggert <eggert@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-grep@HIDDEN Resent-Date: Tue, 10 Jan 2017 00:47:02 +0000 Resent-Message-ID: <handler.24689.B24689.148400920019970 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 24689 X-GNU-PR-Package: grep X-GNU-PR-Keywords: To: Aaron Zhou Qian <aaronzhouqian@HIDDEN> Cc: 24689 <at> debbugs.gnu.org Received: via spool by 24689-submit <at> debbugs.gnu.org id=B24689.148400920019970 (code B ref 24689); Tue, 10 Jan 2017 00:47:02 +0000 Received: (at 24689) by debbugs.gnu.org; 10 Jan 2017 00:46:40 +0000 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) References: <CANbv7+zL0vyktnnuLZ9MHwFV1M9xSDR69MaWda1hfHS4Ug_myw@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-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.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.