GNU bug report logs - #4485
23.1; bookmark-save performances

Previous Next

Package: emacs;

Reported by: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>

Date: Sat, 19 Sep 2009 08:40:06 UTC

Severity: normal

Done: Stefan Monnier <monnier <at> iro.umontreal.ca>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (Emacs bug Tracking System)
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Subject: bug#4485: marked as done (23.1; bookmark-save performances)
Date: Sun, 20 Sep 2009 15:05:06 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 20 Sep 2009 10:55:43 -0400
with message-id <jwvljk91xb2.fsf-monnier+emacsbugreports <at> gnu.org>
and subject line Re: bug#4485: 23.1; bookmark-save performances
has caused the Emacs bug report #4485,
regarding 23.1; bookmark-save performances
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact help-debbugs <at> gnu.org
immediately.)


-- 
4485: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=4485
Emacs Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 23.1; bookmark-save performances
Date: Sat, 19 Sep 2009 10:25:00 +0200
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the bug-gnu-emacs <at> gnu.org mailing list,
and to the gnu.emacs.bug news group.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

Hi, with current version of `bookmark-write-file' saving a big list of
bookmarks is very long:

More than 50s for 195 bookmarks.

That's because entire `bookmark-alist' is given to pp:

,----[ bookmark.el:bookmark-write-file ]
| (pp bookmark-alist (current-buffer))
`----

With this modification i made in bookmark+.el, for same 195 bookmarks,
it take only 1.24s:

,----[ bookmark+.el:bookmark-write-file ]
| (progn (insert "(")
|        (dolist (i  bookmark-alist) (pp i (current-buffer)))
|        (insert ")"))
`----

Little chunks of `bookmark-alist' are given one by one to pp and that is
faster.
 
NOTE: Measures were made with elp-instrument-*

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
/usr/share/emacs/23.1/etc/DEBUG for instructions.


In GNU Emacs 23.1.1 (i686-pc-linux-gnu, GTK+ Version 2.16.5)
 of 2009-07-31 on tux
Windowing system distributor `The X.Org Foundation', version 11.0.10503000
configured using `configure  '--prefix=/usr' '--build=i686-pc-linux-gnu' '--host=i686-pc-linux-gnu' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--datadir=/usr/share' '--sysconfdir=/etc' '--localstatedir=/var/lib' '--program-suffix=-emacs-23' '--infodir=/usr/share/info/emacs-23' '--with-sound' '--with-x' '--without-toolkit-scroll-bars' '--with-gif' '--with-jpeg' '--with-png' '--with-rsvg' '--with-tiff' '--with-xpm' '--with-xft' '--without-libotf' '--without-m17n-flt' '--with-x-toolkit=gtk' '--without-hesiod' '--without-kerberos' '--without-kerberos5' '--with-gpm' '--with-dbus' 'build_alias=i686-pc-linux-gnu' 'host_alias=i686-pc-linux-gnu' 'CFLAGS=-march=i686 -pipe -O2' 'LDFLAGS=-Wl,-O1''

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

Major mode: Emacs-Lisp

Minor modes in effect:
  eldoc-mode: t
  icomplete-mode: t
  icicle-mode: t
  delete-selection-mode: t
  minibuffer-depth-indicate-mode: t
  auto-image-file-mode: t
  shell-dirtrack-mode: t
  partial-completion-mode: t
  show-paren-mode: t
  display-battery-mode: t
  display-time-mode: t
  diff-auto-refine-mode: t
  outline-minor-mode: t
  recentf-mode: t
  savehist-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<f11> a <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <return> C-c C-b w r i t e <down> 
<return> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> C-SPC C-n C-n C-n M-w <f11> a 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <return> C-c C-b 
w r i t e <down> <return> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<right> <right> <right> <right> <right> <right> C-SPC 
C-e M-w M-x r e p o r t <tab> <down> <return>

Recent messages:
bunzip2ing elisp.info.bz2...done
bunzip2ing elisp-11.info.bz2...done
Type C-x 4 C-o RET to restore the other window, C-M-v to scroll help. [2 times]
 [2 times]
Mark set [2 times]
 [2 times]
Mark set
Auto-saving...
Mark set
Computing completion candidates...

-- 
A + Thierry Volpiatto
Location: Saint-Cyr-Sur-Mer - France



[Message part 3 (message/rfc822, inline)]
From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Thierry Volpiatto <thierry.volpiatto <at> gmail.com>
Subject: Re: bug#4485: 23.1; bookmark-save performances
Date: Sun, 20 Sep 2009 10:55:43 -0400
> Hi, with current version of `bookmark-write-file' saving a big list of
> bookmarks is very long:

> More than 50s for 195 bookmarks.

> That's because entire `bookmark-alist' is given to pp:

> ,----[ bookmark.el:bookmark-write-file ]
> | (pp bookmark-alist (current-buffer))
> `----

> With this modification i made in bookmark+.el, for same 195 bookmarks,
> it take only 1.24s:

> ,----[ bookmark+.el:bookmark-write-file ]
> | (progn (insert "(")
> |        (dolist (i  bookmark-alist) (pp i (current-buffer)))
> |        (insert ")"))
> `----

> Little chunks of `bookmark-alist' are given one by one to pp and that is
> faster.
 
Thank you very much.  I've installed your patch,


        Stefan

This bug report was last modified 15 years and 332 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.