Re: [RFC PATCH v5 0/3] grep: almost no more leaks, hopefully no crashes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Aug 9, 2019 at 2:26 PM Johannes Schindelin
<Johannes.Schindelin@xxxxxx> wrote:
>
> FWIW I am very much in favor of this approach.

FWIW this is (almost) exactly what I had in mind with my first reply,
except I wanted to make setting of the global context be conditioned
to having NED enabled to avoid possible performance issues in
environments were NED is not even usable.

in macOS (obviously testing without NED) the following is the output
of (a hacked version) of p7801 for maint (against chromium's
repository), with René's patch on top

Test                                       HEAD^               HEAD
--------------------------------------------------------------------------------------
7820.1: perl grep 'how.to'                 0.51(0.35+1.11)
0.48(0.33+1.16) -5.9%
7820.2: perl grep '^how to'                0.47(0.33+1.08)
0.45(0.34+1.11) -4.3%
7820.3: perl grep '[how] to'               0.49(0.40+1.11)
0.53(0.41+1.13) +8.2%
7820.4: perl grep '(e.t[^ ]*|v.ry) rare'   68.72(68.77+1.14)
72.10(72.15+1.20) +4.9%
7820.5: perl grep 'm(ú|u)lt.b(æ|y)te'      0.48(0.35+1.12)
0.50(0.40+1.23) +4.2%

and this is with my squashed[2] changed on top of that :

Test                                       HEAD^               HEAD
--------------------------------------------------------------------------------------
7820.1: perl grep 'how.to'                 0.48(0.36+1.16)
0.46(0.33+1.09) -4.2%
7820.2: perl grep '^how to'                0.45(0.34+1.12)
0.42(0.29+0.99) -6.7%
7820.3: perl grep '[how] to'               0.48(0.40+1.13)
0.52(0.43+1.16) +8.3%
7820.4: perl grep '(e.t[^ ]*|v.ry) rare'   69.12(69.10+1.07)
69.19(69.19+1.18) +0.1%
7820.5: perl grep 'm(ú|u)lt.b(æ|y)te'      0.49(0.38+1.17)
0.46(0.35+1.13) -6.1%

the degenerate case is not something we can't fix anyway, since it is
likely a locking issue inside PCRE2 (I see at most 1 CPU doing work),
and the numbers are noisy because of the other problems I mentioned
before (hardcoded to 8 threads, running in a laptop with low number of
cores), which is why testing for performance regressions in windows is
strongly encouraged, regardless

Carlo

[1] https://public-inbox.org/git/CAPUEspgH1v1zo7smzQWCV4rX9pKVKLV84gDSfCPdT7LffQxUWw@xxxxxxxxxxxxxx/
[2] https://public-inbox.org/git/20190810030315.7519-1-carenas@xxxxxxxxx/




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux