emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Matt Lundin <mdl@imapmail.org>
To: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Cc: Org Mode List <emacs-orgmode@gnu.org>
Subject: Re: [ANN] Agenda speed up
Date: Sat, 30 Sep 2017 13:54:06 -0500	[thread overview]
Message-ID: <87r2uoow4x.fsf@fastmail.fm> (raw)
In-Reply-To: <87r2upkzda.fsf@nicolasgoaziou.fr> (Nicolas Goaziou's message of "Fri, 29 Sep 2017 22:45:37 +0200")

Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:

> If there is no more feedback nor objection, I'll merge the branch in
> master before the end of the week.
>
> Until then, the changes are still available in wip-agenda-speedup branch
> for review.

Thanks for the heads up. I just had a chance to test the
wip-agenda-speedup branch and find that it significantly slows down the
creation of agenda buffers with my agenda files and custom commands.

I think I have a fairly standard setup (some customizations, additional
features such as habits). I'll do some testing with minimal examples to
see if I can find out why the new branch is so much slower in my case.
In the meantime, I'd like to that the branch *not* be merged until we
are sure that it is actually faster for the majority of use cases.

Here is a quick comparison of the top elp-results using a couple of commands:

(org-todo-list "TODO")

master:
--8<---------------cut here---------------start------------->8---
org-todo-list                                                 1           0.95475971    0.95475971
org-agenda-prepare                                            1           0.425165363   0.425165363
org-agenda-prepare-buffers                                    1           0.394949431   0.394949431
org-agenda-get-day-entries                                    63          0.2680520310  0.0042547941
org-agenda-get-todos                                          63          0.262784373   0.0041711805
org-agenda-finalize-entries                                   1           0.202006798   0.202006798
org-get-tags-at                                               454         0.200070026   0.0004406828
org-agenda-highlight-todo                                     227         0.1841641769  0.0008112959
org-back-to-heading                                           1207        0.1734143220  0.0001436738
--8<---------------cut here---------------end--------------->8---

wip-agenda-speedup:
--8<---------------cut here---------------start------------->8---
org-todo-list                                                 1           1.402434591   1.402434591
org-agenda-day-entries                                        63          0.4656588689  0.0073914106
org-agenda--entry-from-todo                                   2217        0.4304873449  0.0001941756
org-agenda-prepare                                            1           0.387713298   0.387713298
org-agenda-prepare-buffers                                    1           0.37858942    0.37858942
org-agenda--file-data                                         63          0.2997486200  0.0047579146
org-entry-get                                                 1402        0.2108398869  0.0001503850
org-entry-properties                                          1366        0.1953800049  0.0001430307
org-agenda-finalize-entries                                   1           0.191974038   0.191974038
org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item  237         0.1819146310  0.0007675722
org-agenda-highlight-todo                                     227         0.1735402220  0.0007644943
org-agenda--todo-data                                         7           0.1687917040  0.0241131005
org-back-to-heading                                           2336        0.1648271410  7.055...e-05
--8<---------------cut here---------------end--------------->8---

(org-agenda-list)

master:
--8<---------------cut here---------------start------------->8---
org-agenda-list                                               1           1.036426005   1.036426005
org-agenda-prepare                                            1           0.59630983    0.59630983
org-agenda-prepare-buffers                                    1           0.584742966   0.584742966
org-agenda-get-day-entries                                    63          0.388804281   0.0061714965
org-agenda-get-scheduled                                      63          0.287089758   0.0045569802
org-refresh-category-properties                               63          0.280568592   0.0044534697
org-habit-parse-todo                                          30          0.178230735   0.0059410245
org-time-string-to-time                                       219         0.162822094   0.0007434798
--8<---------------cut here---------------end--------------->8---

wip-agenda-speedup:
--8<---------------cut here---------------start------------->8---
org-agenda-list                                               1           1.37723502    1.37723502
org-agenda-prepare                                            1           0.594557456   0.594557456
org-agenda-prepare-buffers                                    1           0.582119253   0.582119253
org-agenda--all-filtered-data                                 1           0.307176728   0.307176728
org-agenda--file-data                                         63          0.279614084   0.0044383187
org-agenda-day-entries                                        53          0.2725648440  0.0051427329
org-agenda--entry-from-scheduled                              251         0.196999124   0.0007848570
org-entry-get                                                 378         0.1887249349  0.0004992723
org-is-habit-p                                                282         0.1811045989  0.0006422148
org-agenda-finalize                                           1           0.178296907   0.178296907
org-agenda-align-tags                                         1           0.158472831   0.158472831
org-add-props                                                 291         0.156753814   0.0005386729
org-refresh-category-properties                               63          0.1188651170  0.0018867478
org-refresh-properties                                        126         0.101092705   0.0008023230
--8<---------------cut here---------------end--------------->8---

Best,
Matt

  parent reply	other threads:[~2017-09-30 18:54 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-27 16:16 [ANN] Agenda speed up Nicolas Goaziou
2017-08-27 16:22 ` Nicolas Goaziou
2017-08-27 20:05 ` Samuel Wales
2017-08-31 17:17   ` Nicolas Goaziou
2017-08-27 20:53 ` Russell Adams
2017-08-28  8:32   ` Colin Baxter
2017-08-28 10:12 ` Eric S Fraga
2017-08-28 14:24   ` Nicolas Goaziou
2017-08-29  6:52     ` Eric S Fraga
2017-08-29 15:56       ` Robert Horn
2017-08-29  8:06     ` Eric S Fraga
2017-08-30  9:00       ` Nicolas Goaziou
2017-08-30  9:41         ` Eric S Fraga
2017-08-30 15:00           ` Nicolas Goaziou
2017-08-30 15:37             ` Eric S Fraga
2017-08-30  9:42         ` Eric S Fraga
2017-09-29 20:45 ` Nicolas Goaziou
2017-09-29 20:56   ` Samuel Wales
2017-09-30  8:55     ` Nicolas Goaziou
2017-09-30 19:03       ` Matt Lundin
2017-10-01 17:33         ` Nicolas Goaziou
2017-10-01 17:57           ` Samuel Wales
2017-10-01 17:58             ` Samuel Wales
2017-10-01 22:59             ` Nicolas Goaziou
2017-10-01 23:49           ` Matt Lundin
2017-09-30  3:20   ` Kyle Meyer
2017-10-02 13:41     ` Nicolas Goaziou
2017-10-05 14:48       ` Kyle Meyer
2017-09-30 18:54   ` Matt Lundin [this message]
2017-09-30 19:53     ` Matt Lundin
2017-10-01 17:13     ` Nicolas Goaziou
2017-10-02  0:11 ` Matt Lundin
2017-10-02  0:39   ` Samuel Wales
2017-10-02 15:46     ` Nicolas Goaziou
2017-10-02 18:11       ` Marco Wahl
2017-10-03  9:35         ` Nicolas Goaziou
2017-10-03 10:23           ` Marco Wahl
2017-10-02 20:39       ` Samuel Wales
2017-10-03  9:36         ` Nicolas Goaziou
2017-10-03 23:45           ` Samuel Wales
2017-10-04  0:05             ` Samuel Wales
2017-10-02 15:28   ` 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=87r2uoow4x.fsf@fastmail.fm \
    --to=mdl@imapmail.org \
    --cc=emacs-orgmode@gnu.org \
    --cc=mail@nicolasgoaziou.fr \
    /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).