unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: Robert Marshall <spam@capuchin.co.uk>
To: help-gnu-emacs@gnu.org
Subject: Re: emacs slow on dired renaming
Date: Fri, 04 Apr 2014 14:17:51 +0100	[thread overview]
Message-ID: <87lhvl6xog.fsf@capuchin.co.uk> (raw)
In-Reply-To: mailman.18866.1396555421.10748.help-gnu-emacs@gnu.org

On Thu, Apr 03 2014, Eli Zaretskii <eliz@gnu.org> wrote:

>> From: Robert Marshall <spam@capuchin.co.uk>
>> Date: Thu, 03 Apr 2014 19:57:44 +0100
>> 
>> > Try profiling Emacs with "M-x profile-start".  That might show you a
>> > hint where the delay hides.
>> >
>> 
>> It appears that the delay gradually increases when it does go bad. At
>> the moment a rename is taking around 1 sec (same copy operation is virtually
>> instantaneous when emacs first started)
>
> Maybe wait until it gets slower and profile again.
>
> Also, manually load dired.el and dired-aux.el (not the *.elc files),
> so that more Lisp functions show instead of the unhelpful "byte-code".
>

At the moment it's still under 2 sec for each file. I've manually loaded
dired and dired-aux and now get the report which follows. The culprit
appears to be dired-in-this-tree (or the number of times its called as
its rather short) - at the moment I have 42 dired buffers open (and
dired-buffers confirms this) of which only 1 or 2 have subdirectories
also open within the buffer.

I've opened a couple more dired buffers since starting but most of them were
open from the beginning (via desktop) and then there was no slowdown.

     - dired-create-files                                      26704  94%
       - let                                                    26704  94%
        - let                                                   26701  94%
         - let                                                  26701  94%
          - while                                               26701  94%
           - if                                                 26701  94%
            - let*                                              26701  94%
             - condition-case                                   26448  93%
              - progn                                           26448  93%
               - funcall                                        21434  75%
                - dired-rename-file                             21434  75%
                 - dired-rename-subdir                          15928  56%
                  - let                                         10940  38%
                   - while                                      10936  38%
                    - save-current-buffer                       10878  38%
                     - if                                       10855  38%
                      - and                                     10855  38%
                       - dired-in-this-tree                     10841  38%
                        + let                                      23   0%
                      setq                                          4   0%
                  + dired-fun-in-all-buffers                     4988  17%
                 - dired-remove-file                             5505  19%
                  - dired-fun-in-all-buffers                     5505  19%
                   - let                                         5505  19%
                    - let                                        5505  19%
                     - dired-buffers-for-dir                     5118  18%
                      - let                                      5118  18%
                       - let                                     5118  18%
                        - while                                  5118  18%
                         - let                                   5118  18%
                          - cond                                 5110  17%
                           - dired-in-this-tree                  5110  17%
                            + let                                  20   0%
                     + while                                      387   1%
               - dired-add-file                                  5014  17%
                - dired-fun-in-all-buffers                       5014  17%
                 - let                                           5014  17%
                  - let                                          5014  17%
                   - dired-buffers-for-dir                       5014  17%
                    - let                                        5014  17%
                     - let                                       5014  17%
                      - while                                    5014  17%
                       - let                                     5010  17%
                        - cond                                   5004  17%
                         - dired-in-this-tree                    5004  17%
                          - let                                    14   0%
 
-- 
La grenouille songe..dans son château d'eau
Links and things http://rmstar.blogspot.com/


  parent reply	other threads:[~2014-04-04 13:17 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-03  6:57 emacs slow on dired renaming Robert Marshall
2014-04-03 14:52 ` Eli Zaretskii
     [not found] ` <mailman.18826.1396536739.10748.help-gnu-emacs@gnu.org>
2014-04-03 18:57   ` Robert Marshall
2014-04-03 20:03     ` Eli Zaretskii
     [not found]     ` <mailman.18866.1396555421.10748.help-gnu-emacs@gnu.org>
2014-04-04 13:17       ` Robert Marshall [this message]
2014-04-04 14:02         ` Eli Zaretskii
     [not found]         ` <mailman.18922.1396620169.10748.help-gnu-emacs@gnu.org>
2014-04-05  8:50           ` Robert Marshall
2014-04-05  9:22             ` Eli Zaretskii
2014-04-05 13:55               ` Stefan Monnier
     [not found]               ` <mailman.18986.1396706186.10748.help-gnu-emacs@gnu.org>
2014-04-05 15:09                 ` Robert Marshall
     [not found]             ` <mailman.18966.1396689747.10748.help-gnu-emacs@gnu.org>
2014-04-05 11:09               ` Robert Marshall
2014-04-05 11:56                 ` Eli Zaretskii
     [not found]                 ` <mailman.18977.1396698988.10748.help-gnu-emacs@gnu.org>
2014-04-05 12:32                   ` Robert Marshall
2014-04-06 12:39                     ` Robert Marshall
2014-04-06 16:21                       ` Eli Zaretskii
     [not found]                       ` <mailman.19055.1396801288.10748.help-gnu-emacs@gnu.org>
2014-04-06 17:21                         ` Robert Marshall
2014-04-09  9:41                           ` Robert Marshall
2014-04-09 12:50                             ` Robert Marshall
2014-04-09 13:17                             ` Stefan Monnier
     [not found]                             ` <mailman.19290.1397049474.10748.help-gnu-emacs@gnu.org>
2014-04-09 15:12                               ` Robert Marshall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lhvl6xog.fsf@capuchin.co.uk \
    --to=spam@capuchin.co.uk \
    --cc=help-gnu-emacs@gnu.org \
    --cc=robert@capuchin.co.uk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).