Re: glibc test time regression after gawk update

"H.J. Lu" <[email protected]>
Newsgroups gmane.comp.lib.glibc.alpha,gmane.comp.gnu.gawk.bugs
Message-ID <CAMe9rOpMGK5socokF4+OWOzFa0Y-daYvPSb1+2H77OnEYnvpng@mail.gmail.com>
On Mon, Jul 6, 2026 at 8:44 AM H.J. Lu <[email protected]> wrote:
>
> On Mon, Jul 6, 2026 at 7:19 AM Sam James <[email protected]> wrote:
> >
> > [email protected] writes:
> >
> > > Hi.
> >
> > Hi Arnold,
> >
> > >
> > > I suspect that the problem is line 34 in the script:
> > >
> > >       value = gensub(/^(INF|NAN|inf|nan)/, "+\\1", 1, val)
> > >
> > > There was a bug in gensub with \N escapes that has been fixed.
> > > Can you try with https://www.skeeve.com/gawk/gawk-5.4.0d.tar.gz?
> > >
> > > FYI, feedback on this ASAP would be really good, as I am planning
> > > to release 5.4.1 this week.
> >
> > Sorry for the delay, I'd tried to find time earlier this week but events
> > got the better of me.
> >
> > It looks like it solves the problem:
> > ```
> > $ hyperfine "make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4.0/bin/gawk" "make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4-stable/bin/gawk"
> > Benchmark 1: make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4.0/bin/gawk
> >   Time (mean ± σ):      3.303 s ±  0.013 s    [User: 3.567 s, System: 0.116 s]
> >   Range (min … max):    3.281 s …  3.320 s    10 runs
> >
> > Benchmark 2: make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4-stable/bin/gawk
> >   Time (mean ± σ):      2.369 s ±  0.018 s    [User: 2.632 s, System: 0.114 s]
> >   Range (min … max):    2.352 s …  2.415 s    10 runs
> >
> > Summary
> >   make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4-stable/bin/gawk ran
> >     1.39 ± 0.01 times faster than make test t=stdio-common/tst-printf-format-vas-double-f AWK=/tmp/gawk-5.4.0/bin/gawk
> > ```

On Fedora 44/x86-64 compiled with -O3,

1.  With gawk 5.4:

commit 2a5799a85c452a903cc334cb90a8e5abcd84faaf (HEAD ->
gawk-5.4-stable, origin/gawk-5.4-stable)
Author: Arnold D. Robbins <[email protected]>
Date:   Sun Jul 5 11:44:01 2026 +0300

    Update generated files.

$ time make test t=stdio-common/tst-printf-format-f-ldouble-e
...
real 0m15.996s
user 0m18.359s
sys 0m0.335s

2. With gawk 5.3:

commit 16ba2113002eedad16b944cac3439eb309648144 (HEAD ->
gawk-5.3-stable, origin/gawk-5.3-stable)
Author: Andrew J. Schorr <[email protected]>
Date:   Thu Jul 24 10:47:40 2025 -0400

    Disable lint warning when a filename is numeric but came from user input.

$ time make test t=stdio-common/tst-printf-format-f-ldouble-e
...
real 0m9.955s
user 0m12.328s
sys 0m0.304s

gawk 5.4 is much slower.

> > Hopefully Florian can confirm as well. I didn't compare the full
> > testsuite time, just picked a sample of the tst-printf-format-* tests
> > (as for some reason I couldn't easily re-run just all of those with
> > `subdirs=`).
> >
>
> Is it
>
> https://sourceware.org/bugzilla/show_bug.cgi?id=34355
>
> --
> H.J.



-- 
H.J.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.