emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: dark.key8799@151e.ai
To: emacs-orgmode@gnu.org
Subject: Slowness of org-agenda-redo in org 9.7 vs 9.6.7
Date: Fri, 19 Jan 2024 18:35:37 +0800	[thread overview]
Message-ID: <d1147036-8949-4595-9fde-f25318063bbc@app.fastmail.com> (raw)

I've been running 9.7 for a few weeks and I've noticed a slowdown in `org-agenda-redo'. I finally ran some benchmarks.

I can reproduce it with a minimal org config (bare init.el with only straight.el and a short org config) with my full `org-agenda-files' (~450 files). In my regular conf, both are faster than the report below (I suppose because of gc collection parameters), about ~10s and ~1s respectively.

(use-package org
  ;:straight (:type built-in)
  :custom
  (org-agenda-inhibit-startup t)
  (org-agenda-dim-blocked-tasks nil)
  (org-agenda-window-setup 'current-window)
  (org-agenda-restore-windows-after-quit t)
  (org-agenda-show-future-repeats nil)
  (org-agenda-todo-ignore-scheduled 'all)
  (org-agenda-tags-todo-honor-ignore-options t)
  (org-agenda-tags-column 0)
  (org-tags-exclude-from-inheritance '("project"))
  (org-agenda-files
   '("~/Documents/Notes/" "~/Documents/Notes/org-roam/" "~/Documents/Notes/org-roam/daily/")))

Here's a truncated comparison of elp outputs
                                                              calls9_7  elapsed9_7    average9_7  calls9_6_7  elapsed9_6_7  average9_6_7  diff_calls  diff_elapsed
function                                                                                                                                                          
org-agenda-redo                                                      1   34.677843  3.467784e+01           1      6.764364  6.764364e+00           0     27.913479
org-agenda-run-series                                                1   34.672858  3.467286e+01           1      6.763294  6.763294e+00           0     27.909564
org-element-cache-map                                             5904   31.591816  5.350917e-03        5904      5.696144  9.647940e-04           0     25.895672
org-tags-view                                                        6   30.645603  5.107601e+00           6      5.897457  9.829095e-01           0     24.748146
org-scan-tags                                                     2952   30.300860  1.026452e-02        2952      5.590151  1.893683e-03           0     24.710709
org-agenda-get-day-entries                                        1476    3.594734  2.435457e-03        1476      0.606745  4.110738e-04           0      2.987989
org-agenda-list                                                      1    3.621574  3.621574e+00           1      0.665955  6.659550e-01           0      2.955619
org-element-lineage-map                                          38658    2.356579  6.095000e-05           0      0.000000  0.000000e+00       38658      2.356579
org-element--property                                           706448    1.981798  2.805000e-06           0      0.000000  0.000000e+00      706448      1.981798
org-agenda-get-scheduled                                          1476    1.947263  1.319284e-03        1476      0.241429  1.635697e-04           0      1.705834
org-entry-get-with-inheritance                                   37938    3.647018  9.613000e-05       37938      2.436293  6.421000e-05           0      1.210725
org-agenda-get-deadlines                                          1476    1.323156  8.964471e-04        1476      0.154018  1.043482e-04           0      1.169138
org-element-begin                                               570514    0.980263  1.718000e-06           0      0.000000  0.000000e+00      570514      0.980263
org-element-property-inherited                                   40114    0.881786  2.198000e-05           0      0.000000  0.000000e+00       40114      0.881786
org-element-type                                               2805984    0.888528  3.166000e-07      154150      0.054403  3.529000e-07     2651834      0.834125
org-element--cache-key                                          164988    0.789725  4.786000e-06           0      0.000000  0.000000e+00      164988      0.789725
org-element-parent                                              255728    0.771416  3.016000e-06           0      0.000000  0.000000e+00      255728      0.771416
org-element-at-point                                            238169    0.788185  3.309000e-06        8429      0.229212  2.719000e-05      229740      0.558973
org--property-local-values                                      116449    1.657522  1.423000e-05      115973      1.238066  1.067000e-05         476      0.419456
org-element--parse-to                                             9564    0.480723  5.026000e-05        9611      0.079269  8.247000e-06         -47      0.401454
org--get-local-tags                                              38172    0.242883  6.362000e-06         234      0.001800  7.692000e-06       37938      0.241083
org-element--cache-find                                           9540    0.272448  2.855000e-05        9587      0.053306  5.560000e-06         -47      0.219142
org-agenda-prepare                                                   9    0.298073  3.311922e-02           9      0.114234  1.269267e-02           0      0.183839
org-agenda-prepare-buffers                                           1    0.288492  2.884920e-01           1      0.108683  1.086830e-01           0      0.179809
org-set-regexps-and-options                                        492    0.181551  3.690060e-04         492      0.019952  4.055000e-05           0      0.161599
org-element-contents-end                                         87720    0.130603  1.488000e-06           0      0.000000  0.000000e+00       87720      0.130603
org-agenda-entry-get-agenda-timestamp                            37883    0.197997  5.226000e-06       37883      0.069473  1.833000e-06           0      0.128524
org-collect-keywords                                               492    0.126222  2.565487e-04         492      0.017828  3.623000e-05           0      0.108394
org--collect-keywords-1                                            492    0.124751  2.535589e-04         492      0.016960  3.447000e-05           0      0.107791
org-agenda-skip                                                    971    0.129958  1.338393e-04         971      0.027204  2.801000e-05           0      0.102754


             reply	other threads:[~2024-01-19 10:38 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-19 10:35 dark.key8799 [this message]
2024-01-19 12:57 ` Slowness of org-agenda-redo in org 9.7 vs 9.6.7 Ihor Radchenko
2024-01-19 13:49   ` dark.key8799
2024-01-19 14:00     ` Ihor Radchenko
2024-01-19 14:50       ` dark.key8799
2024-01-19 15:15         ` Ihor Radchenko
2024-01-22  6:09           ` dark.key8799
2024-01-22 12:05             ` Ihor Radchenko
2024-01-22 15:36               ` dark.key8799
2024-01-22 19:57                 ` Ihor Radchenko
2024-01-23  2:35                   ` dark.key8799
2024-01-24 15:02                     ` Ihor Radchenko
2024-01-24 15:59                       ` dark.key8799
2024-01-24 16:12                         ` Ihor Radchenko

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=d1147036-8949-4595-9fde-f25318063bbc@app.fastmail.com \
    --to=dark.key8799@151e.ai \
    --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).