Hi Nick,
Function Name Call Count Elapsed Time Average Time
============================================================ ==========
org-agenda 1 1.943013 1.943013
org-agenda-run-series 1 1.590022 1.590022
org-let2 2 1.1610179999 0.5805089999
org-tags-view 1 0.826727 0.826727
org-scan-tags 5 0.760431 0.1520862
org-let 2 0.426281 0.2131405
org-agenda-get-restriction-and-command 1 0.3529 0.3529
org-agenda-list 1 0.334261 0.334261
org-prepare-agenda-buffers 2 0.3264879999 0.1632439999
org-prepare-agenda 3 0.3113339999 0.1037779999
org-get-entries-from-diary 1 0.266385 0.26638
When agenda is slow:
Function Name Call Count Elapsed Time Average Time
============================================================ ==========
org-agenda 1 12.133429 12.133429
org-agenda-run-series 1 11.768025 11.768025
org-let2 2 10.856247999 5.4281239999
org-tags-view 1 10.427989 10.427989
org-scan-tags 5 10.402578000 2.0805156000
org-let 2 0.908944 0.454472
org-finalize-agenda 3 0.8176239999 0.2725413333
org-agenda-get-day-entries 10 0.6845889999 0.0684588999
org-agenda-get-scheduled 10 0.4447109999 0.0444711
org-agenda-list 1 0.428234 0.428234
There have been various discussions on agenda slowness in the past -Susan Addy <susan.e.addy@gmail.com> wrote:
> Thanks Bernt. I checked and Linum-mode is not enabled.
>
> Also, I using emacs 22.3.1 and org-mode 7.7 (if it helps).
>
>
> On Sun, Nov 13, 2011 at 2:16 PM, Bernt Hansen <bernt@norang.ca> wrote:
>
> Susan Addy <susan.e.addy@gmail.com> writes:
>
> > Below is a list of my agenda command - maybe it is too long? When it
> > is slow, it is slow no matter what TODO I am trying to compile.
> >
> > Any thoughts?
> > Thank you!
>
> If you have linum-mode enabled you should turn that off. Others have
> reported slow navigation when that is enabled.
>
> HTH,
> Bernt
>
>
check the mailing list for some guesses (linum-mode, font-lock, property
inheritance, code compilation and perhaps others have been suggested as
possible causes). Sometimes the guesses pan out, sometimes not.
The most important thing you can do, imo, is to profile the code, first
when it's behaving well and then when it's behaving badly.
All you have to do is
M-x elp-instrument-package RET org RET
run your agenda command and then
M-x elp-results RET
to get the results.
Nick