|
From: | Chris Hanson |
Subject: | bug#66288: 29.1; Performance regression using pipe for subprocess |
Date: | Sun, 1 Oct 2023 14:02:26 -0400 |
User-agent: | Mozilla Thunderbird |
On 10/1/23 04:39, Eli Zaretskii wrote:
Date: Sat, 30 Sep 2023 20:57:31 -0400 From: Chris Hanson <cph@chris-hanson.org> When using "xscheme.el" to start and interact with MIT/GNU Scheme in a subprocess, the performance significantly degraded in Emacs 29.1. It worked well in older releases. Here is a recipe: emacs -Q M-x load-library RET xscheme RET M-x run-scheme RET and see how slowly the process output is printed as Scheme starts. Compare this to Emacs 28.2 or earlier.Please post the comparison as you see it on your system, preferably in quantitative terms (e.g., time it takes to read and process some chunk of text in both versions), and using the same version of MIT/GNU Scheme. FWIW, I see no changes in xscheme.el between v28.1 and v29.1, except some minor aesthetic changes and renames of functions. So I wonder how come you see a significant slowdown.
Attached find two screen grabs showing 28.2 and 29.1; you'll see the difference is dramatic. In both cases the same MIT/GNU Scheme version was used. (FYI: I'm the MIT/GNU Scheme maintainer, as well as the original author of "xscheme.el".)
I saw that there were no relevant differences in "xscheme.el" but I never thought that was relevant.
I believe this has something to do with how piped subprocesses are being managed. I've not looked deeply into the C code for this, but I could find no mention of anything to do with pipes in NEWS.
I don't think there's anything funny going on with how MIT/GNU Scheme manages stdout but I'll look into it.
vokoscreenNG-2023-10-01_13-39-22.mkv
Description: video/matroska
vokoscreenNG-2023-10-01_13-40-38.mkv
Description: video/matroska
[Prev in Thread] | Current Thread | [Next in Thread] |