Nicolas Goaziou writes: > Matt Lundin writes: > >> I am finding that the branch is still much slower than the current >> master even when no agenda files have changed (i.e., when running >> org-agenda-redo in an existing agenda buffer without changing >> anything). > > This is interesting. Could you provide a report of the second call to > the same view? Or better, both reports for the first and subsequent > view. The second view should definitely be faster. I've attached the profiling for master and the wip branch. Both were run with identical agenda files and identical configurations The first pair of files profiles calling org-agenda-list immediately after emacs has started up (i.e., before opening agenda files). The total times are: master: 5.014304355 wip: 6.68215677 The second pair of files profiles calling org-agenda-redo immediately after generating the agenda with org-agenda-list (i.e., without changing anything in the agenda files). Note: repeating the redo after that results in virtually identical times. master: 0.979825959 wip: 1.178702222 The third pair of files profiles calling org-agenda-redo after changing (rescheduling) one item in the agenda. master: 0.979580617 wip: 1.189759099 > I can look into your issue with proper reports as there may be ways to > improve it, but I'm more interesting in, e.g., halving the 30 s from > a month view than reducing the 1 s it takes to display a day view. I agree it is important to reduce the time it takes to display a month view. Thanks for all your work on this! I'd like to clarify that I am not asking for further reductions from what the master branch of org-mode has already achieved. Rather, I am concerned with regressions from those times. The gap in time above, of course, is not particularly big. But I'm running into some slower times (e.g., a 1 second difference) on some of my other custom agenda commands. Take, for instance, the following command: --8<---------------cut here---------------start------------->8--- (org-add-agenda-custom-command '("q" "Projects" ((stuck "") (agenda "" ((org-agenda-include-deadlines t) (org-agenda-entry-types '(:deadline)) ;; (org-agenda-skip-function ;; '(org-agenda-skip-entry-if 'notregexp ":PROJ:")) (org-agenda-include-diary nil) (org-agenda-time-grid nil))) (todo "PROJECT" ((org-agenda-todo-ignore-deadlines t) (org-agenda-prefix-format " %i %-12:c%l")))) ((org-deadline-warning-days 365)))) --8<---------------cut here---------------end--------------->8--- The startup times weren't that far apart. master: 5.728477902 wip: 6.68639764 But running org-agenda-redo results in a 1s gap (see the last two attached files for profiling information): master: 2.14623279 wip: 3.125571084 Best, Matt