unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* Emacs 29 slow subprocess output when using pipe for connection
@ 2023-08-26  3:39 Chris Hanson
  2023-08-27  8:35 ` Eli Zaretskii
  0 siblings, 1 reply; 3+ messages in thread
From: Chris Hanson @ 2023-08-26  3:39 UTC (permalink / raw)
  To: help-gnu-emacs

On Emacs 29, I've noticed when using the MIT/GNU Scheme interaction mode 
(xscheme.el) the output is extremely slow; it was fine in Emacs 28.

After a few hours of debugging, I found a fix.  In 
xscheme-start-process, I changed the following lines:

(setq process
       (let ((process-connection-type nil))
	(apply 'start-process
	       (cons the-process
		     (cons buffer
			   (xscheme-parse-command-line
			    command-line))))))

to

(setq process
       (apply 'start-process
	     (cons the-process
		   (cons buffer
			 (xscheme-parse-command-line
			  command-line)))))

This simply changes the connection type from pipe to pty.

That's surprising behavior.  Why is the pipe connection so slow?  Has no 
one noticed this because the default is to use ptys?

Any input would be helpful.  If there's no feedback, I'll file a bug.

Note that I don't read this list, so please include me in any reply.

Thanks,
Chris



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Emacs 29 slow subprocess output when using pipe for connection
  2023-08-26  3:39 Emacs 29 slow subprocess output when using pipe for connection Chris Hanson
@ 2023-08-27  8:35 ` Eli Zaretskii
  2023-08-27  8:55   ` Eli Zaretskii
  0 siblings, 1 reply; 3+ messages in thread
From: Eli Zaretskii @ 2023-08-27  8:35 UTC (permalink / raw)
  To: help-gnu-emacs

> Date: Fri, 25 Aug 2023 23:39:23 -0400
> From: Chris Hanson <cph@chris-hanson.org>
> 
> On Emacs 29, I've noticed when using the MIT/GNU Scheme interaction mode 
> (xscheme.el) the output is extremely slow; it was fine in Emacs 28.

Please define "extremely slow" in more quantitative terms.  E.g., can
you show a comparative benchmark between these two versions of Emacs,
so that the relative times could be assessed?

Off the top of my head, I don't think we've changed anything
significant in how subprocess output is handled, but maybe I'm
misremembering, or there's a subtle bug.

> Why is the pipe connection so slow?  Has no one noticed this because
> the default is to use ptys?

On MS-Windows, only pipes are available, so it's unlikely that any
significant slowdown could go completely unnoticed.  Unless the reason
for slow-down doesn't affect the MS-Windows build of Emacs.



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Emacs 29 slow subprocess output when using pipe for connection
  2023-08-27  8:35 ` Eli Zaretskii
@ 2023-08-27  8:55   ` Eli Zaretskii
  0 siblings, 0 replies; 3+ messages in thread
From: Eli Zaretskii @ 2023-08-27  8:55 UTC (permalink / raw)
  To: help-gnu-emacs

> Date: Sun, 27 Aug 2023 11:35:49 +0300
> From: Eli Zaretskii <eliz@gnu.org>
> 
> > Date: Fri, 25 Aug 2023 23:39:23 -0400
> > From: Chris Hanson <cph@chris-hanson.org>
> > 
> > On Emacs 29, I've noticed when using the MIT/GNU Scheme interaction mode 
> > (xscheme.el) the output is extremely slow; it was fine in Emacs 28.
> 
> Please define "extremely slow" in more quantitative terms.  E.g., can
> you show a comparative benchmark between these two versions of Emacs,
> so that the relative times could be assessed?

And please also show the details of the Emacs configuration and build
in both versions, so that their comparative performances could be
assessed.  The relevant variables are:

  . system-configuration
  . system-configuration-options
  . system-configuration-features

I assume that you run both versions on the same system, or on systems
with very similar hardware and software configurations.  If not,
please describe that as well.



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-08-27  8:55 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-26  3:39 Emacs 29 slow subprocess output when using pipe for connection Chris Hanson
2023-08-27  8:35 ` Eli Zaretskii
2023-08-27  8:55   ` Eli Zaretskii

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).