bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#18626: 24.3.94; communication with subprocess is slow


From: Stephen Leake
Subject: bug#18626: 24.3.94; communication with subprocess is slow
Date: Sun, 05 Oct 2014 08:20:47 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (windows-nt)

Eli Zaretskii <eliz@gnu.org> writes:

> Can you present similar timings from some Posix platform for
> comparison?

On Debian wheezy, with emacs 24.3.94:

$ cd /tmp
$ time cat < /home/Projects/emacs/emacs-24.3.94/src/xdisp.c > xdisp.c
real    0m0.007s
user    0m0.000s
sys     0m0.004s


(find-file "emacs-24.3.94/src/xdisp.c")
(pipe-torture "cat.exe")
1.556597

much faster than Windows, but still slow relative to plain file IO.

(pipe-torture "debug.exe" "4096")

This dies, because "debug.exe" exits early. It turns out that Emacs is
sending one line of the buffer at a time. I have not yet tried to figure
out why that doesn't happen on Windows.

(find-file "emacs-24.3.94/src/xdisp.c")
(pipe-torture-read "/Projects/emacs/emacs-24.3.94/src/xdisp.c")
0.077341

much faster than Windows, 10 times slower than file IO.

>> Doing (setq process-adaptive-read-buffering nil) did not change the
>> timing.
>
> AFAIK, this variable only matters for reading the subprocess output.
> Since you didn't present the results for that, there's no evidence yet
> which would support this conclusion.

Right; process-adaptive-read-buffering should only affect
pipe-torture-read.

On Windows:

    (find-file "emacs-24.3.94/src/xdisp.c")
    (pipe-torture-read "/Projects/emacs/emacs-24.3.94/src/xdisp.c")

    process-adaptive-read-buffering t:
    11.997684

    process-adaptive-read-buffering nil:
    12.012685

process-adaptive-read-buffering has no effect.

Simililary, on Debian, process-adaptive-read-buffering has no effect.

-- 
-- Stephe





reply via email to

[Prev in Thread] Current Thread [Next in Thread]