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

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

Re: emacs slow on dired renaming


From: Robert Marshall
Subject: Re: emacs slow on dired renaming
Date: Fri, 04 Apr 2014 14:17:51 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux)

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/


reply via email to

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