[pcre-dev] [Bug 2698] New: Performance regression caused by …

Top Page
Delete this message
Author: admin
Date:  
To: pcre-dev
Subject: [pcre-dev] [Bug 2698] New: Performance regression caused by r1236
https://bugs.exim.org/show_bug.cgi?id=2698

            Bug ID: 2698
           Summary: Performance regression caused by r1236
           Product: PCRE
           Version: 10.36 (PCRE2)
          Hardware: All
                OS: All
            Status: NEW
          Severity: bug
          Priority: medium
         Component: Code
          Assignee: Philip.Hazel@???
          Reporter: whissi@???
                CC: pcre-dev@???


Created attachment 1369
--> https://bugs.exim.org/attachment.cgi?id=1369&action=edit
PoC (PHP script) showing the problem

Hi,

Debian updated PCRE from 10.34 to 10.36 this week which uncovered a major
performance regression in a PHP application. I was able to reproduce this on
Gentoo.

Please see the attached PHP script. I run the PoC against 10.34 and 10.36
(including current SVN trunk, i.e. it is still unfixed):

> thomas@hv-gentoo-x64 /var/tmp $ time php -d pcre.jit=0 pcre-problem.php
> PCRE version:   10.36 2020-12-04
> PCRE JIT:       disabled
> Got content in 0.11089181900024s
> int(0)

>
> Finished after 122.9806330204s
>
> real    2m2.990s
> user    2m2.712s
> sys     0m0.007s

>
>
> thomas@hv-gentoo-x64 /var/tmp $ time php -d pcre.jit=1 pcre-problem.php
> PCRE version:   10.36 2020-12-04
> PCRE JIT:       enabled
> Got content in 0.26398801803589s
> int(0)

>
> Finished after 12.119644880295s
>
> real    0m12.129s
> user    0m11.853s
> sys     0m0.000s

>
>
> thomas@hv-gentoo-x64 /var/tmp $ time php -d pcre.jit=0 pcre-problem.php
> PCRE version:   10.34 2019-11-21
> PCRE JIT:       disabled
> Got content in 0.11802387237549s
> int(0)

>
> Finished after 120.98400783539s
>
> real    2m0.994s
> user    2m0.712s
> sys     0m0.004s

>
>
> thomas@hv-gentoo-x64 /var/tmp $ time php -d pcre.jit=1 pcre-problem.php
> PCRE version:   10.34 2019-11-21
> PCRE JIT:       enabled
> Got content in 0.11507105827332s
> int(0)

>
> Finished after 0.11547303199768s
>
> real    0m0.125s
> user    0m0.005s
> sys     0m0.008s


I run this on a modern CPU with 4.2GHz single thread performance.

A bisect revealed https://vcs.pcre.org/pcre2?view=revision&revision=1236 as bad
revision.

--
You are receiving this mail because:
You are on the CC list for the bug.