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

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

bug#8235: 23.2; slow scrolling w/ multiple frames visiting same file


From: Paul Vernaza
Subject: bug#8235: 23.2; slow scrolling w/ multiple frames visiting same file
Date: Sat, 12 Mar 2011 16:11:48 -0500

Steps to reproduce:
At an OS X terminal, run "open -a Emacs --args -Q".
Open a large text file with C-x C-f.
Open two new frames visiting the same buffer with C-x 5 2 C-x 5 2.
Switch back to the original frame.
Scroll down by holding C-n.

Detailed description:
In the OS X Cocoa version of Emacs, if multiple frames are visiting the
same buffer, some of the frames visiting this buffer exhibit very slow 
scrolling, while others scroll normally. Scrolling is slow in the sense
that the display updates infrequently while scrolling (say, up to a
second between updates).  CPU usage appears to be near normal, maybe at
most slightly elevated while these symptoms are exhibited (possible
concurrency issue?).

Problem is consistent across major modes I've tested (fundamental, text, lisp,
ocaml).  The problem seems to be specific to the Cocoa version of
Emacs--the X11 version (23.3) compiled on the same platform does not have the
issue. Although I'm reporting this from the Macports-compiled version,
I have verified that the bug occurs compiling 23.3 with Cocoa on the
same platform.

Profiling with Shark shows abnormally high time spent in the
redisplay_windows function (~50%) while slow scrolling is occurring.
While scrolling normally, profiling shows an insignificant amount of 
time spent in this function (< 1%).  


In GNU Emacs 23.2.1 (x86_64-apple-darwin10.4.0, NS apple-appkit-1038.32)
of 2010-06-30 on seasnet-10-13.grasp.upenn.edu
Windowing system distributor `Apple', version 10.3.1038
configured using `configure  '--prefix=/opt/local' '--with-ns' '--without-x' 
'--without-dbus' 'CC=/usr/bin/gcc-4.2' 'CFLAGS=-O2 -arch x86_64' 
'LDFLAGS=-L/opt/local/lib' 'CPPFLAGS=-I/opt/local/include''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: UTF-8
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Text

Minor modes in effect:
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-x C-f f o o C-h <backspace> <backspace> <backspace> 
<backspace> <backspace> ~ / <backspace> e r <backspace> 
<backspace> / f o o . t x t <return> C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-x C-f C-g C-x 5 2 C-x 5 2 C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n s-` C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n s-` C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n s-x ` x <backspace> <backspace> 
<escape> x r e p <tab> o r t <tab> <return>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Quit
kill-region: The mark is not set now, so there is no region
Making completion list...

Load-path shadows:
None found.

Features:
(shadow sort mail-extr message ecomplete rfc822 mml mml-sec
password-cache mm-decode mm-bodies mm-encode mailcap mail-parse rfc2231
rfc2047 rfc2045 qp ietf-drums mailabbrev nnheader gnus-util netrc
time-date mm-util mail-prsvr gmm-utils wid-edit mailheader canlock sha1
hex-util hashcash mail-utils emacsbug help-mode view tooltip ediff-hook
vc-hooks lisp-float-type mwheel ns-win easymenu tool-bar dnd fontset
image fringe lisp-mode register page menu-bar rfn-eshadow timer select
scroll-bar mldrag 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 loaddefs button minibuffer faces cus-face files
text-properties overlay md5 base64 format env code-pages mule custom
widget hashtable-print-readable backquote make-network-process ns
multi-tty emacs)





reply via email to

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