unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#20611: 24.4; mutt slow in ansi-term
@ 2015-05-19  7:58 Mark Hindley
  2016-04-08 18:10 ` Marcin Borkowski
  2016-06-17 11:04 ` Phil Sainty
  0 siblings, 2 replies; 25+ messages in thread
From: Mark Hindley @ 2015-05-19  7:58 UTC (permalink / raw)
  To: 20611; +Cc: mark


I have just tried emacs 24 (24.4.1 from debian jessie). Compared to
version 23, mutt running within ansi-term is very sluggish. Terminal
redraws take several seconds. This is still the same with emacs24
-q.

I have noticed bug #18151 and wonder if it is the same, although it is
reported against an earlier version (24.3.92).

Mark

In GNU Emacs 24.4.1 (i586-pc-linux-gnu, GTK+ Version 3.14.5)
 of 2015-03-07 on binet, modified by Debian
Windowing system distributor `The X.Org Foundation', version 11.0.11604000
System Description:	Debian GNU/Linux 8.0 (jessie)

Configured using:
 `configure --build i586-linux-gnu --prefix=/usr
 --sharedstatedir=/var/lib --libexecdir=/usr/lib
 --localstatedir=/var/lib --infodir=/usr/share/info
 --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.4/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.4/site-lisp:/usr/share/emacs/site-lisp
 --build i586-linux-gnu --prefix=/usr --sharedstatedir=/var/lib
 --libexecdir=/usr/lib --localstatedir=/var/lib
 --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes
 --enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.4/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.4/site-lisp:/usr/share/emacs/site-lisp
 --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars
 'CFLAGS=-g -O2 -fstack-protector-strong -Wformat
 -Werror=format-security -Wall' CPPFLAGS=-D_FORTIFY_SOURCE=2
 LDFLAGS=-Wl,-z,relro'

Important settings:
  value of $LC_ALL: en_GB.UTF-8
  value of $LANG: en_GB.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Fundamental

Minor modes in effect:
  shell-dirtrack-mode: t
  show-paren-mode: t
  delete-selection-mode: t
  global-smart-tab-mode: t
  savehist-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<right> <right> <right> <right> <right> <right> <right> 
<right> <down> <end> . SPC S w i t c h i n g SPC b 
a c k SPC t o SPC v e r s i o n SPC 2 3 <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <down> <down> <down> 
<home> r e <backspace> <backspace> <backspace> <backspace> 
<backspace> <backspace> i t SPC i s SPC r e p o r t 
e d SPC a g a i n s t SPC a M-d M-d M-d <end> <left> 
SPC v e r s i o n SPC ( 2 4 . 3 . 9 2 ) <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> <left> <left> <left> <left> <left> <left> 
<left> <left> n M-d SPC e a r l i e r <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<end> <return> C c : SPC m a r k C-x C-s n C-c C-c 
n o <return> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> M-> C-w <backspace> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> C-c C-c <up> <down> <tab> s m <tab> 
<help-echo> <help-echo> <return> l o c a l h o s t 
<return> <help-echo> <help-echo> <down-mouse-1> <mouse-movement> 
<mouse-movement> <drag-mouse-1> s-c C-x k y e s <return> 
M-x <up> <return>

Recent messages:
Making completion list...
Saving file /home/mark/.emacs-custom.el...
Wrote /home/mark/.emacs-custom.el [2 times]
Unable to load color "white !gray80" [16 times]
Saving file /home/mark/.emacs-custom.el...
Wrote /home/mark/.emacs-custom.el [2 times]
Saving file /home/mark/.emacs-custom.el...
Wrote /home/mark/.emacs-custom.el [2 times]
smtpmail-send-it: Sending failed: 501 <mark>: recipient address must contain a domainUnable to load color "white !gray80"
Unable to load color "white !gray80" [5 times]

Load-path shadows:
/usr/share/emacs/24.4/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup
/usr/share/emacs24/site-lisp/quilt-el/quilt hides /usr/share/emacs/site-lisp/quilt
/usr/share/emacs24/site-lisp/dictionaries-common/flyspell hides /usr/share/emacs/24.4/lisp/textmodes/flyspell
/usr/share/emacs24/site-lisp/dictionaries-common/ispell hides /usr/share/emacs/24.4/lisp/textmodes/ispell
/usr/share/emacs/site-lisp/rst hides /usr/share/emacs/24.4/lisp/textmodes/rst
/usr/share/emacs24/site-lisp/auctex/tex hides /usr/share/emacs/site-lisp/auctex/tex
/usr/share/emacs24/site-lisp/auctex/context-en hides /usr/share/emacs/site-lisp/auctex/context-en
/usr/share/emacs24/site-lisp/auctex/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style
/usr/share/emacs24/site-lisp/auctex/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar
/usr/share/emacs24/site-lisp/auctex/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex
/usr/share/emacs24/site-lisp/auctex/plain-tex hides /usr/share/emacs/site-lisp/auctex/plain-tex
/usr/share/emacs24/site-lisp/auctex/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp
/usr/share/emacs24/site-lisp/auctex/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info
/usr/share/emacs24/site-lisp/auctex/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font
/usr/share/emacs24/site-lisp/auctex/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl
/usr/share/emacs24/site-lisp/auctex/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt
/usr/share/emacs24/site-lisp/auctex/preview hides /usr/share/emacs/site-lisp/auctex/preview
/usr/share/emacs24/site-lisp/auctex/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold
/usr/share/emacs24/site-lisp/auctex/latex hides /usr/share/emacs/site-lisp/auctex/latex
/usr/share/emacs24/site-lisp/auctex/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x
/usr/share/emacs24/site-lisp/auctex/prv-emacs hides /usr/share/emacs/site-lisp/auctex/prv-emacs
/usr/share/emacs24/site-lisp/auctex/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik
/usr/share/emacs24/site-lisp/auctex/tex-buf hides /usr/share/emacs/site-lisp/auctex/tex-buf
/usr/share/emacs24/site-lisp/auctex/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite
/usr/share/emacs24/site-lisp/auctex/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp
/usr/share/emacs24/site-lisp/auctex/context hides /usr/share/emacs/site-lisp/auctex/context
/usr/share/emacs24/site-lisp/emacs-goodies-el/shell-command hides ~/lib/lisp/shell-command
/usr/share/emacs/24.4/lisp/vc/smerge-mode hides ~/lib/lisp/smerge-mode
/usr/share/emacs/24.4/lisp/vc/log-edit hides ~/lib/lisp/log-edit

Features:
(network-stream starttls tls mailalias smtpmail auth-source eieio
byte-opt bytecomp byte-compile cconv eieio-core password-cache cus-edit
wid-edit tabify imenu man pp shadow sort gnus-util mail-extr emacsbug
message format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode
mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils noutline outline view
help-fns misearch multi-isearch apropos help-mode dabbrev term
disp-table easymenu ehelp shell pcomplete comint ansi-color ring
warnings server saveplace paren delsel cus-start cus-load smart-tab
savehist edmacro kmacro cl-loaddefs cl-lib debian-el debian-el-loaddefs
50magit emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs
easy-mmode dpkg-dev-el dpkg-dev-el-loaddefs preview-latex tex-site
auto-loads time-date tooltip electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer nadvice
loaddefs button faces cus-face macroexp files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process dbusbind
gfilenotify dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty emacs)

Memory information:
((conses 8 154860 16339)
 (symbols 24 23260 0)
 (miscs 20 206 365)
 (strings 16 37306 6353)
 (string-bytes 1 997812)
 (vectors 8 15166)
 (vector-slots 4 455813 11750)
 (floats 8 86 394)
 (intervals 28 3770 328)
 (buffers 512 26)
 (heap 1024 27000 593))





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

* bug#20611: 24.4; mutt slow in ansi-term
  2015-05-19  7:58 bug#20611: 24.4; mutt slow in ansi-term Mark Hindley
@ 2016-04-08 18:10 ` Marcin Borkowski
  2016-04-09  7:39   ` Mark Hindley
  2016-06-17 11:04 ` Phil Sainty
  1 sibling, 1 reply; 25+ messages in thread
From: Marcin Borkowski @ 2016-04-08 18:10 UTC (permalink / raw)
  To: Mark Hindley; +Cc: 20611

On 2015-05-19, at 08:58, Mark Hindley <mark@hindley.org.uk> wrote:

> I have just tried emacs 24 (24.4.1 from debian jessie). Compared to
> version 23, mutt running within ansi-term is very sluggish. Terminal
> redraws take several seconds. This is still the same with emacs24
> -q.
>
> I have noticed bug #18151 and wonder if it is the same, although it is
> reported against an earlier version (24.3.92).
>
> Mark

Hi Mark,

it's been quite a long time, but let me ask: does this behavior still
persist?  If not, I'll close this bug.

-- 
Marcin





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-08 18:10 ` Marcin Borkowski
@ 2016-04-09  7:39   ` Mark Hindley
  2016-04-09  9:38     ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Mark Hindley @ 2016-04-09  7:39 UTC (permalink / raw)
  To: Marcin Borkowski; +Cc: 20611

On Fri, Apr 08, 2016 at 08:10:04PM +0200, Marcin Borkowski wrote:
> On 2015-05-19, at 08:58, Mark Hindley <mark@hindley.org.uk> wrote:
> Hi Mark,
> 
> it's been quite a long time, but let me ask: does this behavior still
> persist?  If not, I'll close this bug.

Yes, I think so.

I have upgraded to faster hardware, so it is less apparent, but my perception is
that redraws within the terminal is slow. Particularly if the terminal is the
only buffer visible within emacs.

If there is any more information I can usefully provide, do say.

Best wishes

Mark





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-09  7:39   ` Mark Hindley
@ 2016-04-09  9:38     ` Eli Zaretskii
  2016-04-10  9:15       ` Mark Hindley
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-09  9:38 UTC (permalink / raw)
  To: Mark Hindley; +Cc: 20611, mbork

> Date: Sat, 9 Apr 2016 08:39:37 +0100
> From: Mark Hindley <mark@hindley.org.uk>
> Cc: 20611@debbugs.gnu.org
> 
> I have upgraded to faster hardware, so it is less apparent, but my perception is
> that redraws within the terminal is slow. Particularly if the terminal is the
> only buffer visible within emacs.

Does that only happen with mutt, or also with any other display in
ansi-term?

Also, above you say "terminal", which seems to be a much more broad
issue.  Did you still mean ansi-term, or did you mean Emacs running on
a text terminal?

Thanks.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-09  9:38     ` Eli Zaretskii
@ 2016-04-10  9:15       ` Mark Hindley
  2016-04-10 17:01         ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Mark Hindley @ 2016-04-10  9:15 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 20611, mbork

On Sat, Apr 09, 2016 at 12:38:18PM +0300, Eli Zaretskii wrote:
> > Date: Sat, 9 Apr 2016 08:39:37 +0100
> > From: Mark Hindley <mark@hindley.org.uk>
> > Cc: 20611@debbugs.gnu.org
> > 
> > I have upgraded to faster hardware, so it is less apparent, but my perception is
> > that redraws within the terminal is slow. Particularly if the terminal is the
> > only buffer visible within emacs.
> 
> Does that only happen with mutt, or also with any other display in
> ansi-term?

I have just tried alsamixer within ansi-term, and redraws in response to Ctrl-L
take well over a second.

> Also, above you say "terminal", which seems to be a much more broad
> issue.  Did you still mean ansi-term, or did you mean Emacs running on
> a text terminal?

Sorry for my rather loose use of language: as originally, I meant ansi-term.
Would anything else help narrow this down?

Mark





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-10  9:15       ` Mark Hindley
@ 2016-04-10 17:01         ` Eli Zaretskii
  2016-04-10 22:22           ` Alexis
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-10 17:01 UTC (permalink / raw)
  To: Mark Hindley; +Cc: 20611, mbork

> Date: Sun, 10 Apr 2016 10:15:26 +0100
> From: Mark Hindley <mark@hindley.org.uk>
> Cc: mbork@mbork.pl, 20611@debbugs.gnu.org
> 
> On Sat, Apr 09, 2016 at 12:38:18PM +0300, Eli Zaretskii wrote:
> > > Date: Sat, 9 Apr 2016 08:39:37 +0100
> > > From: Mark Hindley <mark@hindley.org.uk>
> > > Cc: 20611@debbugs.gnu.org
> > > 
> > > I have upgraded to faster hardware, so it is less apparent, but my perception is
> > > that redraws within the terminal is slow. Particularly if the terminal is the
> > > only buffer visible within emacs.
> > 
> > Does that only happen with mutt, or also with any other display in
> > ansi-term?
> 
> I have just tried alsamixer within ansi-term, and redraws in response to Ctrl-L
> take well over a second.

Strange.  Does anyone else see this?

> Would anything else help narrow this down?

Can you show a profile ("M-x profiler-start RET") of the slow redraws?
Preferably with the latest pretest of Emacs 25.1, if you can.

Thanks.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-10 17:01         ` Eli Zaretskii
@ 2016-04-10 22:22           ` Alexis
  2016-04-11 16:01             ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Alexis @ 2016-04-10 22:22 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Mark Hindley, mbork, 20611


Eli Zaretskii <eliz@gnu.org> writes:
 
>> I have just tried alsamixer within ansi-term, and redraws in 
>> response to Ctrl-L take well over a second.
>
> Strange.  Does anyone else see this?

Context: Debian Jessie x86_64 / i5-2410M.

i also observe noticeable lag in the above situation, on both on 
24.5 and on master as at d6ea6453. The lag is worse on the latter 
than the former.

> Can you show a profile ("M-x profiler-start RET") of the slow 
> redraws?  Preferably with the latest pretest of Emacs 25.1, if 
> you can.

Running the profiler on master:

#+BEGIN
- term-emulate-terminal 
  4233  91% 
 - term-handle-ansi-escape 
 4065  87% 
  - term-goto 
  3965  85% 
   - term-down 
   970  20% 
    - vertical-motion 
    4   0% 
       jit-lock-function 
       4   0% 
   - vertical-motion 
   4   0% 
    - jit-lock-function 
    4   0% 
     - jit-lock-fontify-now 
     4   0% 
      - jit-lock--run-functions 
      4   0% 
       - run-hook-wrapped 
       4   0% 
        - #<compiled 0xa9010f> 
        4   0% 
         - font-lock-fontify-region 
         4   0% 
            font-lock-default-fontify-region 
            4   0% 
    term-insert-spaces 
    100   2% 
   redisplay 
   40   0% jit-lock-after-change 
   4   0% 
+ command-execute 
352   7% + ... 
29   0% 
  and 
  8   0% 
+ redisplay_internal (C function) 
4   0% + timer-event-handler 
2   0% #+END

Hth.


Alexis.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-10 22:22           ` Alexis
@ 2016-04-11 16:01             ` Eli Zaretskii
  2016-04-12  7:59               ` Alexis
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-11 16:01 UTC (permalink / raw)
  To: Alexis; +Cc: mark, mbork, 20611

> From: Alexis <flexibeast@gmail.com>
> Cc: Mark Hindley <mark@hindley.org.uk>, 20611@debbugs.gnu.org, mbork@mbork.pl
> Date: Mon, 11 Apr 2016 08:22:09 +1000
> 
> Context: Debian Jessie x86_64 / i5-2410M.
> 
> i also observe noticeable lag in the above situation, on both on 
> 24.5 and on master as at d6ea6453. The lag is worse on the latter 
> than the former.

Do you also see that Emacs 23 is significantly faster?

Also, were v24.5 and the current master compiled with the same
compilation options, and similar to Emacs 23?

> Running the profiler on master:
> 
> #+BEGIN
> - term-emulate-terminal 
>   4233  91% 
>  - term-handle-ansi-escape 
>  4065  87% 
>   - term-goto 
>   3965  85% 
>    - term-down 
>    970  20% 
>     - vertical-motion 

Thanks.  I reviewed all the functions that are high on the profile
(term-goto seems to be the main culprit), and didn't see any
significant changes in them since Emacs 23.  Some of them were not
changed at all.  So I'm puzzled how can Emacs 24 and Emacs 25 be
significantly slower only in term.el.  Ideas and suggestions are
welcome.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-11 16:01             ` Eli Zaretskii
@ 2016-04-12  7:59               ` Alexis
  2016-04-12 15:27                 ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Alexis @ 2016-04-12  7:59 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: mark, mbork, 20611

[-- Attachment #1: Type: text/plain, Size: 2343 bytes --]


Eli Zaretskii <eliz@gnu.org> writes:

> Do you also see that Emacs 23 is significantly faster?

i wasn't sure which version of 23 i should try, so i downloaded 
both 23.1 and 23.4.

`configure' for 23.1 ran successfully, but compilation failed:

$ make cd lib-src; make all                            \ 
  CC='gcc' CFLAGS='-g -O2 -Wno-pointer-sign ' 
  CPPFLAGS='-D_BSD_SOURCE  ' \ LDFLAGS='-Wl,-znocombreloc ' 
  MAKE='make' 
make[1]: Entering directory 
'/home/alexis/Downloads/src/emacs-23.1/lib-src' Makefile:144: *** 
recipe commences before first target.  Stop.  make[1]: Leaving 
directory '/home/alexis/Downloads/src/emacs-23.1/lib-src' 
Makefile:325: recipe for target 'lib-src' failed make: *** 
[lib-src] Error 2 

`configure' for 23.4 required me to call `configure' with the 
option "--with-crt-dir=/usr/lib/x86_64-linux-gnu". Compilation was 
then successful. This version showed no lag at all.

(However, the alsamixer UI was severely broken, visually - 
excessive line length resulted in line wrapping and blocks of 
white background alternating with blocks of black background, as 
per the attached PNG.) 

> Also, were v24.5 and the current master compiled with the same 
> compilation options, and similar to Emacs 23?

Not according to the following, no. Having said that, i've not 
manually made any modifications to the configuration in the 
tarballs, or on master.

23.4:

CC='gcc' CFLAGS='-g -O2 -Wdeclaration-after-statement 
-Wno-pointer-sign' CPPFLAGS='-D_BSD_SOURCE  ' 
LDFLAGS='-Wl,-znocombreloc  ' MAKE='make'

24.5:

CC='gcc -std=gnu99' CFLAGS='-g3 -O2' CPPFLAGS='' LDFLAGS='' 
MAKE='make'

As for master, the env variables are no longer shown by the 'make' 
process. However, running `make -n' produced lines like:

gcc -std=gnu11 -DHAVE_CONFIG_H -I. -I../lib -I../src -I../src -g3 
-O2 -MT allocator.o -MD -MP -MF .deps/allocator.Tpo -c -o 
allocator

Is that okay? Or can i find better information elsewhere?

> Thanks.  I reviewed all the functions that are high on the 
> profile (term-goto seems to be the main culprit), and didn't see 
> any significant changes in them since Emacs 23.  Some of them 
> were not changed at all.  So I'm puzzled how can Emacs 24 and 
> Emacs 25 be significantly slower only in term.el.

Fair enough. One observation, though: the OP and i are both 
running Debian Jessie.


[-- Attachment #2: emacs_23-4.png --]
[-- Type: image/png, Size: 39957 bytes --]

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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-12  7:59               ` Alexis
@ 2016-04-12 15:27                 ` Eli Zaretskii
  2016-04-13  0:22                   ` Alexis
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-12 15:27 UTC (permalink / raw)
  To: Alexis; +Cc: mark, mbork, 20611

> From: Alexis <flexibeast@gmail.com>
> Cc: mark@hindley.org.uk, 20611@debbugs.gnu.org, mbork@mbork.pl
> Date: Tue, 12 Apr 2016 17:59:17 +1000
> 
> i wasn't sure which version of 23 i should try, so i downloaded 
> both 23.1 and 23.4.

I don't think it matters.

> `configure' for 23.4 required me to call `configure' with the 
> option "--with-crt-dir=/usr/lib/x86_64-linux-gnu". Compilation was 
> then successful. This version showed no lag at all.

So you, too, see a slowdown.

> > Also, were v24.5 and the current master compiled with the same 
> > compilation options, and similar to Emacs 23?
> 
> Not according to the following, no. Having said that, i've not 
> manually made any modifications to the configuration in the 
> tarballs, or on master.

Actually, the options that could affect performance are identical,
AFAICT, thanks.

> > Thanks.  I reviewed all the functions that are high on the 
> > profile (term-goto seems to be the main culprit), and didn't see 
> > any significant changes in them since Emacs 23.  Some of them 
> > were not changed at all.  So I'm puzzled how can Emacs 24 and 
> > Emacs 25 be significantly slower only in term.el.
> 
> Fair enough. One observation, though: the OP and i are both 
> running Debian Jessie.

If in Emacs 24 or 25 you set bidi-display-reordering to nil in the
*ansi-term* buffer, do you see any significant speedup?

Another thing to try is load term.el from Emacs 23 into Emacs 24 or
25, and see if that results in any speedup.

Thanks.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-12 15:27                 ` Eli Zaretskii
@ 2016-04-13  0:22                   ` Alexis
  2016-04-13  1:41                     ` Mark Hindley
  2016-04-13  2:41                     ` Eli Zaretskii
  0 siblings, 2 replies; 25+ messages in thread
From: Alexis @ 2016-04-13  0:22 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: mark, mbork, 20611


Eli Zaretskii <eliz@gnu.org> writes:

> If in Emacs 24 or 25 you set bidi-display-reordering to nil in 
> the *ansi-term* buffer, do you see any significant speedup?

i do, in both; with `bidi-display-reordering' set to nil, i don't 
notice any significant lag in either version.

> Another thing to try is load term.el from Emacs 23 into Emacs 24 
> or 25, and see if that results in any speedup.

Not that i noticed, no.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13  0:22                   ` Alexis
@ 2016-04-13  1:41                     ` Mark Hindley
  2016-04-13  2:41                     ` Eli Zaretskii
  1 sibling, 0 replies; 25+ messages in thread
From: Mark Hindley @ 2016-04-13  1:41 UTC (permalink / raw)
  To: Alexis; +Cc: 20611, mbork

On Wed, Apr 13, 2016 at 10:22:09AM +1000, Alexis wrote:
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >If in Emacs 24 or 25 you set bidi-display-reordering to nil in the
> >*ansi-term* buffer, do you see any significant speedup?
> 
> i do, in both; with `bidi-display-reordering' set to nil, i don't notice any
> significant lag in either version.

Just to confirm, this resolves the issue for me too.

Mark





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13  0:22                   ` Alexis
  2016-04-13  1:41                     ` Mark Hindley
@ 2016-04-13  2:41                     ` Eli Zaretskii
  2016-04-13  7:37                       ` Mark Hindley
  1 sibling, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-13  2:41 UTC (permalink / raw)
  To: Alexis; +Cc: mark, mbork, 20611

> From: Alexis <flexibeast@gmail.com>
> Cc: mark@hindley.org.uk, 20611@debbugs.gnu.org, mbork@mbork.pl
> Date: Wed, 13 Apr 2016 10:22:09 +1000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > If in Emacs 24 or 25 you set bidi-display-reordering to nil in 
> > the *ansi-term* buffer, do you see any significant speedup?
> 
> i do, in both; with `bidi-display-reordering' set to nil, i don't 
> notice any significant lag in either version.

How about leaving bidi-display-reordering at its default, and instead
setting bidi-paragraph-direction to left-to-right?





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13  2:41                     ` Eli Zaretskii
@ 2016-04-13  7:37                       ` Mark Hindley
  2016-04-13  7:52                         ` Alexis
  0 siblings, 1 reply; 25+ messages in thread
From: Mark Hindley @ 2016-04-13  7:37 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 20611, Alexis, mbork

On Wed, Apr 13, 2016 at 05:41:06AM +0300, Eli Zaretskii wrote:
> > From: Alexis <flexibeast@gmail.com>
> > Cc: mark@hindley.org.uk, 20611@debbugs.gnu.org, mbork@mbork.pl
> > Date: Wed, 13 Apr 2016 10:22:09 +1000
> > 
> > Eli Zaretskii <eliz@gnu.org> writes:
> > 
> > > If in Emacs 24 or 25 you set bidi-display-reordering to nil in 
> > > the *ansi-term* buffer, do you see any significant speedup?
> > 
> > i do, in both; with `bidi-display-reordering' set to nil, i don't 
> > notice any significant lag in either version.
> 
> How about leaving bidi-display-reordering at its default, and instead
> setting bidi-paragraph-direction to left-to-right?

That also solves the issue for me.

Mark





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13  7:37                       ` Mark Hindley
@ 2016-04-13  7:52                         ` Alexis
  2016-04-13 14:56                           ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Alexis @ 2016-04-13  7:52 UTC (permalink / raw)
  To: Mark Hindley; +Cc: 20611, mbork


Mark Hindley <mark@hindley.org.uk> writes:
 
>> How about leaving bidi-display-reordering at its default, and 
>> instead setting bidi-paragraph-direction to left-to-right?
>
> That also solves the issue for me.

For me also.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13  7:52                         ` Alexis
@ 2016-04-13 14:56                           ` Eli Zaretskii
  2016-04-15  8:13                             ` Alexis
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-13 14:56 UTC (permalink / raw)
  To: Alexis; +Cc: mark, mbork, 20611

> From: Alexis <flexibeast@gmail.com>
> Cc: Eli Zaretskii <eliz@gnu.org>, 20611@debbugs.gnu.org, mbork@mbork.pl
> Date: Wed, 13 Apr 2016 17:52:44 +1000
> 
> 
> Mark Hindley <mark@hindley.org.uk> writes:
>  
> >> How about leaving bidi-display-reordering at its default, and 
> >> instead setting bidi-paragraph-direction to left-to-right?
> >
> > That also solves the issue for me.
> 
> For me also.

Thanks.  So we know how to fix this.  However, I'm curious why these
variables have such a profound effect.  Can you show a screenshot of a
ansi-term display that behaves sluggishly, and also tell how many
lines and how many characters are there in the buffer which is in
ansi-term mode?

Thanks.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-13 14:56                           ` Eli Zaretskii
@ 2016-04-15  8:13                             ` Alexis
  2016-04-16 10:11                               ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Alexis @ 2016-04-15  8:13 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: mark, mbork, 20611

[-- Attachment #1: Type: text/plain, Size: 315 bytes --]


Eli Zaretskii <eliz@gnu.org> writes:

> Can you show a screenshot of a ansi-term display that behaves 
> sluggishly

Attached.

> and also tell how many lines and how many characters are there 
> in the buffer which is in ansi-term mode?

M-x count-lines => "Buffer has 39 lines, 32 words, and 6512 
characters."


[-- Attachment #2: emacs_24-5.png --]
[-- Type: image/png, Size: 22687 bytes --]

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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-04-15  8:13                             ` Alexis
@ 2016-04-16 10:11                               ` Eli Zaretskii
  0 siblings, 0 replies; 25+ messages in thread
From: Eli Zaretskii @ 2016-04-16 10:11 UTC (permalink / raw)
  To: Alexis; +Cc: mark, mbork, 20611

> From: Alexis <flexibeast@gmail.com>
> Cc: mark@hindley.org.uk, 20611@debbugs.gnu.org, mbork@mbork.pl
> Date: Fri, 15 Apr 2016 18:13:54 +1000
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > Can you show a screenshot of a ansi-term display that behaves 
> > sluggishly
> 
> Attached.
> 
> > and also tell how many lines and how many characters are there 
> > in the buffer which is in ansi-term mode?
> 
> M-x count-lines => "Buffer has 39 lines, 32 words, and 6512 
> characters."

What can I say? I'm stumped.  Such small buffers should not be
sensitive to dynamic determination of paragraph direction.

But facts are stubborn, so I installed a change to force
bidi-paragraph-direction to the 'left-to-right' value.  Please try the
latest emacs-25 branch, and if the problem is fixed, please close the
bug.

Thanks.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2015-05-19  7:58 bug#20611: 24.4; mutt slow in ansi-term Mark Hindley
  2016-04-08 18:10 ` Marcin Borkowski
@ 2016-06-17 11:04 ` Phil Sainty
  2016-06-17 13:27   ` Eli Zaretskii
  1 sibling, 1 reply; 25+ messages in thread
From: Phil Sainty @ 2016-06-17 11:04 UTC (permalink / raw)
  To: 20611

On 16/04/16 13:11, Eli Zaretskii wrote:
> I installed a change to force bidi-paragraph-direction to the
 > 'left-to-right' value.  Please try the latest emacs-25 branch,
 > and if the problem is fixed, please close the bug.

I've encountered this issue on a number of occasions, so I was
extremely happy to find this solution (which is very effective).
I've run into it with interactive Debian package configuration,
to offer another example besides mutt.

e.g.: sudo dpkg-reconfigure postfix

I compiled the current emacs-25 branch and the problem was still
in effect, however: bidi-paragraph-direction is not being set to
'left-to-right automatically.


-Phil






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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-17 11:04 ` Phil Sainty
@ 2016-06-17 13:27   ` Eli Zaretskii
  2016-06-18  1:08     ` Phil Sainty
  0 siblings, 1 reply; 25+ messages in thread
From: Eli Zaretskii @ 2016-06-17 13:27 UTC (permalink / raw)
  To: Phil Sainty; +Cc: 20611

> Cc: Eli Zaretskii <eliz@gnu.org>
> From: Phil Sainty <psainty@orcon.net.nz>
> Date: Fri, 17 Jun 2016 23:04:02 +1200
> 
> On 16/04/16 13:11, Eli Zaretskii wrote:
> > I installed a change to force bidi-paragraph-direction to the
>  > 'left-to-right' value.  Please try the latest emacs-25 branch,
>  > and if the problem is fixed, please close the bug.
> 
> I've encountered this issue on a number of occasions, so I was
> extremely happy to find this solution (which is very effective).
> I've run into it with interactive Debian package configuration,
> to offer another example besides mutt.
> 
> e.g.: sudo dpkg-reconfigure postfix
> 
> I compiled the current emacs-25 branch and the problem was still
> in effect, however: bidi-paragraph-direction is not being set to
> 'left-to-right automatically.

In "ansi-term" mode or in some other mode?  I only fixed the former,
and the code is definitely there in the current emacs-25 branch.
Don't you see it in the function ansi-term?





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-17 13:27   ` Eli Zaretskii
@ 2016-06-18  1:08     ` Phil Sainty
  2016-06-18  8:10       ` Eli Zaretskii
  0 siblings, 1 reply; 25+ messages in thread
From: Phil Sainty @ 2016-06-18  1:08 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 20611

On 18/06/16 01:27, Eli Zaretskii wrote:
> In "ansi-term" mode or in some other mode?  I only fixed the former,
> and the code is definitely there in the current emacs-25 branch.
> Don't you see it in the function ansi-term?

Ah, I see. You're right, it works for M-x ansi-term. I hadn't realised
that the new code was added to that specific command.

That's going to be insufficient, as it's a more general problem with
term.el -- so M-x term is still affected, as will be anything else
generating a terminal via a similar wrapper.

(Personally I have a bunch of custom commands which invoke various
programs inside a terminal, and I never call `ansi-term' (because
neither it nor `term' facilitate passing a SWITCHES argument, and so
I call `make-term' myself).

Perhaps the bidi change should be part of term-mode ?

I'm not familiar with bidi concerns, so I don't know whether there's
a use case for retaining the default setting in any terminal scenario?


-Phil






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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-18  1:08     ` Phil Sainty
@ 2016-06-18  8:10       ` Eli Zaretskii
  2016-06-19 11:19         ` Phil Sainty
  2016-06-26  0:50         ` Phil Sainty
  0 siblings, 2 replies; 25+ messages in thread
From: Eli Zaretskii @ 2016-06-18  8:10 UTC (permalink / raw)
  To: Phil Sainty; +Cc: 20611

> Cc: 20611@debbugs.gnu.org
> From: Phil Sainty <psainty@orcon.net.nz>
> Date: Sat, 18 Jun 2016 13:08:13 +1200
> 
> On 18/06/16 01:27, Eli Zaretskii wrote:
> > In "ansi-term" mode or in some other mode?  I only fixed the former,
> > and the code is definitely there in the current emacs-25 branch.
> > Don't you see it in the function ansi-term?
> 
> Ah, I see. You're right, it works for M-x ansi-term. I hadn't realised
> that the new code was added to that specific command.
> 
> That's going to be insufficient, as it's a more general problem with
> term.el -- so M-x term is still affected, as will be anything else
> generating a terminal via a similar wrapper.

A separate bug report with all the details will be appreciated.





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-18  8:10       ` Eli Zaretskii
@ 2016-06-19 11:19         ` Phil Sainty
  2016-06-26  0:50         ` Phil Sainty
  1 sibling, 0 replies; 25+ messages in thread
From: Phil Sainty @ 2016-06-19 11:19 UTC (permalink / raw)
  To: 20611

On 18/06/16 20:10, Eli Zaretskii wrote:
> A separate bug report with all the details will be appreciated.

Continued in bug#23801, for anyone following this.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=23801






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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-18  8:10       ` Eli Zaretskii
  2016-06-19 11:19         ` Phil Sainty
@ 2016-06-26  0:50         ` Phil Sainty
  2016-06-26 16:46           ` Eli Zaretskii
  1 sibling, 1 reply; 25+ messages in thread
From: Phil Sainty @ 2016-06-26  0:50 UTC (permalink / raw)
  To: 20611

The outcome of bug#23801 is that the bidi problem has been fixed in
the master branch of Emacs, such that bidi support can safely remain
enabled in term-mode without causing slowness.

That upstream fix won't be merged to the emacs-25 branch and hence
won't be in 25.1 (and may or may not be in 25.2 either); so it's
desirable for the current workaround (enforcing the left-to-right
direction for terminals) to remain in place in the emacs-25 branch.

I think the remaining question is whether we leave the workaround
as-is (affecting only the ansi-term command specifically), or
improve it to make it effective for all types of terminal.

I would like to see it moved to term-mode. Personally I am setting
the bidi value in term-mode-hook in my own config, which successfully
resolves the issue for all of my terminal use-cases.


-Phil





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

* bug#20611: 24.4; mutt slow in ansi-term
  2016-06-26  0:50         ` Phil Sainty
@ 2016-06-26 16:46           ` Eli Zaretskii
  0 siblings, 0 replies; 25+ messages in thread
From: Eli Zaretskii @ 2016-06-26 16:46 UTC (permalink / raw)
  To: Phil Sainty; +Cc: 20611-done

> Cc: Eli Zaretskii <eliz@gnu.org>
> From: Phil Sainty <psainty@orcon.net.nz>
> Date: Sun, 26 Jun 2016 12:50:18 +1200
> 
> The outcome of bug#23801 is that the bidi problem has been fixed in
> the master branch of Emacs, such that bidi support can safely remain
> enabled in term-mode without causing slowness.
> 
> That upstream fix won't be merged to the emacs-25 branch and hence
> won't be in 25.1 (and may or may not be in 25.2 either); so it's
> desirable for the current workaround (enforcing the left-to-right
> direction for terminals) to remain in place in the emacs-25 branch.
> 
> I think the remaining question is whether we leave the workaround
> as-is (affecting only the ansi-term command specifically), or
> improve it to make it effective for all types of terminal.
> 
> I would like to see it moved to term-mode. Personally I am setting
> the bidi value in term-mode-hook in my own config, which successfully
> resolves the issue for all of my terminal use-cases.

Moved to term-mode, and closing.

Thanks.





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

end of thread, other threads:[~2016-06-26 16:46 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-19  7:58 bug#20611: 24.4; mutt slow in ansi-term Mark Hindley
2016-04-08 18:10 ` Marcin Borkowski
2016-04-09  7:39   ` Mark Hindley
2016-04-09  9:38     ` Eli Zaretskii
2016-04-10  9:15       ` Mark Hindley
2016-04-10 17:01         ` Eli Zaretskii
2016-04-10 22:22           ` Alexis
2016-04-11 16:01             ` Eli Zaretskii
2016-04-12  7:59               ` Alexis
2016-04-12 15:27                 ` Eli Zaretskii
2016-04-13  0:22                   ` Alexis
2016-04-13  1:41                     ` Mark Hindley
2016-04-13  2:41                     ` Eli Zaretskii
2016-04-13  7:37                       ` Mark Hindley
2016-04-13  7:52                         ` Alexis
2016-04-13 14:56                           ` Eli Zaretskii
2016-04-15  8:13                             ` Alexis
2016-04-16 10:11                               ` Eli Zaretskii
2016-06-17 11:04 ` Phil Sainty
2016-06-17 13:27   ` Eli Zaretskii
2016-06-18  1:08     ` Phil Sainty
2016-06-18  8:10       ` Eli Zaretskii
2016-06-19 11:19         ` Phil Sainty
2016-06-26  0:50         ` Phil Sainty
2016-06-26 16:46           ` Eli Zaretskii

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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).