From: Matt Lundin <mdl@imapmail.org>
To: Org Mode <emacs-orgmode@gnu.org>
Subject: Slow speed of week and month views
Date: Tue, 16 Feb 2010 14:58:20 -0500 [thread overview]
Message-ID: <877hqdeyw3.fsf@fastmail.fm> (raw)
Currently I use org-mode to keep track of todos, projects, deadlines and
the emacs diary to keep track of appointments. I would prefer to keep
the latter in org-mode, but the slow speed of the weekly and monthly
agenda views makes it difficult to gain a quick calendar overview of all
upcoming timestamped items.
Has anyone had success in setting up a *fast* calendar view for
org-mode? I use the following custom command to get a view of
timestamped items only:
--8<---------------cut here---------------start------------->8---
("cc" "Calendar (events)" agenda ""
((org-agenda-ndays 1)
(org-agenda-time-grid nil)
(org-agenda-prefix-format " %-12:t ")
(org-agenda-include-all-todo nil)
(org-agenda-repeating-timestamp-show-all t)
(org-agenda-skip-function '(org-agenda-skip-entry-if 'deadline 'scheduled))))
--8<---------------cut here---------------end--------------->8---
With 25 agenda files, if I type "v m" (view month) in the agenda results
for this custom command, it takes over 16 seconds to generate the
monthly calendar.[1]
I get similar results if I type "v m" in the default agenda view.[2] As
a point of comparison, I've included the time it takes to generate an
agenda view for a single day on my system.[3]
As far as I can tell, org-mode scans each agenda file anew for each day
shown in the weekly or monthly agenda (hence the many invocations of
org-agenda-get-day-entries in the results below), so the time it takes
to generate the agenda is roughly proportional to the number of days in
the view.
Does anyone have any tips for speeding up the weekly or monthly agenda
views? I have vague and utterly naïve notions of a function that would
scan each agenda file *once* for timestamps within a given range rather
than searching the agenda files again for each new day---but such a
function is far beyond my elisp skills. Any help would be greatly
appreciated.
Thanks!
Matt
Footnotes:
[1] Monthly view of custom command with 25 agenda files:
org-agenda-view-mode-dispatch 1 15.528815 15.528815
org-agenda-month-view 1 15.384877 15.384877
org-agenda-change-time-span 1 15.384839 15.384839
org-agenda-redo 1 15.383679 15.383679
org-agenda-list 1 15.382742 15.382742
org-agenda-get-day-entries 700 13.948870999 0.0199269585
org-agenda-get-scheduled 700 6.4163719999 0.0091662457
org-agenda-skip-entry-if 12871 5.3256909999 0.0004137744
org-agenda-skip-if 12871 5.1750260000 0.0004020686
org-agenda-get-deadlines 700 4.2478989999 0.0060684271
org-agenda-get-timestamps 700 1.7289499999 0.0024699285
org-agenda-get-sexps 700 0.6763130000 0.0009661614
org-agenda-get-blocks 700 0.6087859999 0.0008696942
org-agenda-todayp 1400 0.3336939999 0.0002383528
org-agenda-skip 15534 0.0450969999 2.903...e-06
org-agenda-files 3 0.016815 0.005605
org-agenda-cleanup-fancy-diary 28 0.0062590000 0.0002235357
org-agenda-mode 1 0.00606 0.00606
org-agenda-highlight-todo 86 0.0041800000 4.860...e-05
org-agenda-format-date-aligned 28 0.0033799999 0.0001207142
org-agenda-new-marker 136 0.0012809999 9.419...e-06
org-agenda-mark-clocking-task 1 0.00121 0.00121
org-agenda-align-tags 1 0.000903 0.000903
org-agenda-find-same-or-today-or-agenda 1 0.000499 0.000499
org-agenda-fontify-priorities 1 0.000394 0.000394
org-agenda-fix-displayed-tags 86 0.0003439999 3.999...e-06
org-agenda-add-time-grid-maybe 23 0.000236 1.026...e-05
org-agenda-set-mode-name 2 6.2e-05 3.1e-05
org-agenda-compute-time-span 1 3.8e-05 3.8e-05
org-agenda-mark-header-line 1 3.5e-05 3.5e-05
org-agenda-post-command-hook 2 1.6e-05 8e-06
org-agenda-reset-markers 1 1e-05 1e-05
org-agenda-ndays-to-span 2 6e-06 3e-06
org-agenda-check-type 1 5e-06 5e-06
[2] Elp results for monthly agenda view:
org-agenda-view-mode-dispatch 1 14.143243 14.143243
org-agenda-month-view 1 13.974747 13.974747
org-agenda-change-time-span 1 13.974703 13.974703
org-agenda-redo 1 13.972615 13.972615
org-agenda-list 1 13.97065 13.97065
org-agenda-get-day-entries 700 12.608783999 0.0180125485
org-agenda-get-scheduled 700 5.9895430000 0.0085564900
org-agenda-get-deadlines 700 3.8111570000 0.0054445100
org-agenda-get-timestamps 700 1.2642759999 0.0018061085
org-agenda-get-sexps 700 0.6626510000 0.0009466442
org-agenda-skip 15534 0.6255180000 4.026...e-05
org-agenda-get-blocks 700 0.6051640000 0.0008645200
org-agenda-todayp 1400 0.326468 0.0002331914
org-agenda-align-tags 1 0.023695 0.023695
org-agenda-highlight-todo 178 0.0217819999 0.0001223707
org-agenda-files 3 0.0175449999 0.0058483333
org-agenda-cleanup-fancy-diary 28 0.006159 0.0002199642
org-agenda-mode 1 0.006109 0.006109
org-agenda-mark-clocking-task 1 0.005423 0.005423
org-agenda-format-date-aligned 28 0.003358 0.0001199285
org-agenda-new-marker 314 0.0026219999 8.350...e-06
org-agenda-add-time-grid-maybe 27 0.0011129999 4.122...e-05
org-agenda-fontify-priorities 1 0.000879 0.000879
org-agenda-fix-displayed-tags 178 0.0008699999 4.887...e-06
org-agenda-find-same-or-today-or-agenda 1 0.000471 0.000471
org-agenda-deadline-face 27 0.0002540000 9.407...e-06
org-agenda-reset-markers 1 8.5e-05 8.5e-05
org-agenda-set-mode-name 2 5.7e-05 2.85e-05
org-agenda-mark-header-line 1 3.6e-05 3.6e-05
org-agenda-compute-time-span 1 3.3e-05 3.3e-05
org-agenda-post-command-hook 2 2.2e-05 1.1e-05
org-agenda-ndays-to-span 2 7e-06 3.5e-06
org-agenda-check-type 1 5e-06 5e-06
[3] Agenda view for single day:
org-agenda-list 1 1.765911 1.765911
org-agenda-get-day-entries 25 1.075021 0.04300084
org-agenda-get-scheduled 25 0.8153739999 0.0326149599
org-agenda-get-deadlines 25 0.1540369999 0.0061614799
org-agenda-get-timestamps 25 0.0491 0.001964
org-agenda-get-sexps 25 0.023261 0.00093044
org-agenda-skip 555 0.0225499999 4.063...e-05
org-agenda-get-blocks 25 0.021848 0.0008739199
org-agenda-files 3 0.0159939999 0.0053313333
org-agenda-align-tags 1 0.013129 0.013129
org-agenda-highlight-todo 59 0.0100849999 0.0001709322
org-agenda-mode 1 0.007312 0.007312
org-agenda-todayp 50 0.0030340000 6.068e-05
org-agenda-mark-clocking-task 1 0.002379 0.002379
org-agenda-new-marker 112 0.0008930000 7.973...e-06
org-agenda-add-time-grid-maybe 1 0.000831 0.000831
org-agenda-fontify-priorities 1 0.000378 0.000378
org-agenda-fix-displayed-tags 59 0.0002479999 4.203...e-06
org-agenda-cleanup-fancy-diary 1 0.00022 0.00022
org-agenda-deadline-face 18 0.000182 1.011...e-05
org-agenda-format-date-aligned 1 0.000117 0.000117
org-agenda-reset-markers 1 8.5e-05 8.5e-05
org-agenda-mark-header-line 1 3.7e-05 3.7e-05
org-agenda-set-mode-name 1 2.7e-05 2.7e-05
org-agenda-post-command-hook 1 1.8e-05 1.8e-05
org-agenda-ndays-to-span 2 7e-06 3.5e-06
next reply other threads:[~2010-02-16 19:58 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-16 19:58 Matt Lundin [this message]
2010-02-21 7:37 ` Slow speed of week and month views Carsten Dominik
2010-02-21 12:34 ` Matthew Lundin
-- strict thread matches above, loose matches on Subject: below --
2017-08-04 15:14 [Orgmode] " Christoph Groth
2017-08-05 3:07 ` Adam Porter
2017-08-05 21:09 ` Karl Voit
2017-08-05 22:17 ` John Kitchin
2017-08-05 22:33 ` Nicolas Goaziou
2017-08-05 22:35 ` Nicolas Goaziou
2017-08-06 8:00 ` Karl Voit
2017-08-06 8:15 ` Nicolas Goaziou
2017-08-06 9:01 ` Karl Voit
2017-08-06 9:13 ` Adam Porter
2017-08-06 10:03 ` Karl Voit
2017-08-06 10:28 ` Adam Porter
2017-08-06 9:26 ` Nicolas Goaziou
2017-08-06 10:18 ` Karl Voit
2017-08-07 11:41 ` Nicolas Goaziou
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.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=877hqdeyw3.fsf@fastmail.fm \
--to=mdl@imapmail.org \
--cc=emacs-orgmode@gnu.org \
/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.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
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).