emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Org mode in combination with emacs follow-mode is terrible


From: Gerald Wildgruber
Subject: Re: [O] Org mode in combination with emacs follow-mode is terrible
Date: Fri, 15 Jun 2018 18:28:46 +0200
User-agent: mu4e 1.1.0; emacs 27.0.50

I tried profiling my use of org-mode in conjunction with follow-mode; I
did the following:

1. M-x profiler-start
2. I enabled follow-mode in my buffer
3. I did some editing
4. M-x profiler-report
5. M-x profiler-stop

here's the result:

Collapsed, the report looks like that:

+ command-execute                                                8789  47%
+ follow-post-command-hook                                       7755  41%
+ ...                                                            1976  10%
+ redisplay_internal (C function)                                 104   0%
+ yas--post-command-handler                                        40   0%
+ timer-event-handler                                              20   0%
  tooltip-hide                                                      7   0%


And somewhat expanded:

- command-execute                                                8789  47%
 - call-interactively                                            8789  47%
  - byte-code                                                    8174  43%
   - read-extended-command                                       8174  43%
    - completing-read                                            8174  43%
     - #<compiled 0x3d2ceb9>                                     8174  43%
      - apply                                                    8174  43%
       - helm--completing-read-default                           8174  43%
        - helm-completing-read-sync-default-handler               8174  43%
         - helm-completing-read-default-1                        8174  43%
          - helm-comp-read                                       8174  43%
           - helm                                                8165  43%
            - apply                                              8165  43%
             - helm                                              8165  43%
              - apply                                            8165  43%
               - helm-internal                                   8165  43%
                - helm-read-pattern-maybe                        8150  43%
                 + read-from-minibuffer                          8079  43%
                 + helm-update                                     43   0%
                - #<compiled 0x12071ed>                             9   0%
                 + helm-cleanup                                     9   0%
                + helm-display-buffer                               6   0%
           + helm-make-source                                       9   0%
  + funcall-interactively                                         615   3%
- follow-post-command-hook                                       7755  41%
 - follow-adjust-window                                          7755  41%
  - follow-windows-start-end                                     7732  41%
   - follow-calc-win-end                                         7732  41%
    + pos-visible-in-window-p                                      25   0%
    + posn-at-x-y                                                   7   0%
    + window-inside-pixel-edges                                     3   0%
  + follow-all-followers                                            4   0%
    follow-avoid-tail-recenter                                      3   0%

If I understand correctly "follow-calc-win-end" would be the function
that uses most of cpu time.

I can't say how "normal" the other 47% under "command-execute" are,
which mainly seems to be helm-related ("helm-update").

Can anyone give an advice on possible optimizations with this situation?


Gerald.


On Mi, Jun 13 2018, Joost Kremers <address@hidden> wrote:

> Actually, I would suspect it's more of a problem for follow-mode than
> org-mode, because follow-mode needs to keep the different windows in sync.
> For this, it adds a function to `post-command-hook', which means it's run
> after every key press.
>
> It's not inconceivable that `follow-mode' does something that is extra
> time-consuming in an Org buffer. To find out what that might be, you could
> try the Elisp profiler that comes with Emacs. See the section "Profiling"
> in the Elisp manual for details.
>
> Once you've found out which function(s) consume so much time, it might be
> possible to ask in here or on emacs-devel what exactly is causing the
> problem and whether there's a way around it.


--
Dr. Gerald Wildgruber
Institut für Philosophie, Literatur-, Wissenschafts- und Technikgeschichte
Literaturwissenschaft mit Schwerpunkt Literatur und Wissenschaft
Technische Universität Berlin
Straße des 17. Juni 135
D-10623 Berlin
http://www.philosophie.tu-berlin.de/menue/home/
T. +49 (0)30 314 25924
F. +49 (0)30 314 23107
address@hidden
---------------------
Sent with mu4e



reply via email to

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