Subject: Re: bug#66288: 29.1; Performance regression using pipe for subprocess

From: Eli Zaretskii <[email-masked]>
Date: Tue, 03 Oct 2023 09:22:44 +0300

> Date: Mon, 2 Oct 2023 19:23:25 -0400
> Cc: [email-masked], Eli Zaretskii <[email-masked]>,
>  Gerd Möllmann <[email-masked]>
> From: Chris Hanson <[email-masked]>
> 
> I've been running the tests with a pre-release version of MIT/GNU 
> Scheme. But I re-ran them with 11.2 and it had the same behavior as the 
> pre-release.
> 
> I'm running Ubuntu 22.04 LTS, and I built 28.2 and 29.1 from source (I 
> don't usually use the Emacs that comes with the distro).

Are you building with exactly the same configure- and build-time
options?  Can you show the values of the following variables in both
versions:

  system-configuration
  system-configuration-options
  system-configuration-features
  locale-coding-system

And what does the following produce in both versions:

  emacs -Q
  M-x load-library RET emacsbug RET
  M-: (emacs-build-description) RET

Also, what are the values of the following variables in src/Makefile:

  CFLAGS
  CPPFLAGS
  LDFFLAGS
  C_SWITCH_SYSTEM

> I've also seen the slowdown on my laptop with Debian 12, though I
> haven't done as much testing there.

I guess both of those machines have something in common: your
preferred configuration of the system and its various features and
libraries?

I think at this point, since none of the initial guesses seems to be
correct, running your recipe under perf and looking at the differences
would be our best bet?  That, and bisecting the Git repository.

> One other thing comes to mind: is it possible that this is a problem 
> with native compilation? I built both 28.2 and 29.1 to use native 
> compilation. Did anything relevant change in 29.1?

It's unlikely to matter, but to eliminate this variable, please try
building without native-compilation and see if the difference
persists.

Thanks.