emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Bastien <bzg@altern.org>
To: Sebastien Vauban
	<public-wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@plane.gmane.org>
Cc: public-emacs-orgmode-mXXj517/zsQ@plane.gmane.org
Subject: Re: elp-instrument-package does not return anything
Date: Tue, 25 Dec 2012 03:47:51 +0100	[thread overview]
Message-ID: <87y5gmrgo8.fsf@bzg.ath.cx> (raw)
In-Reply-To: <804njbpntl.fsf@somewhere.org> (Sebastien Vauban's message of "Mon, 24 Dec 2012 14:44:06 +0100")



Hi Sébastien,

"Sebastien Vauban"
<wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@public.gmane.org> writes:

> Generating the agenda for 43 files, and more or less 75 entries to display,
> takes between 17 and 20 seconds, in this case 19 seconds:
>
> org-agenda-list                                               1           19.156        19.156
> org-agenda-prepare                                            1           11.141        11.141
> org-agenda-prepare-buffers                                    1           11.078        11.078
> org-get-agenda-file-buffer                                    344         11.064000000  0.0321627906
  ^^^^^^^^^^^^^^^^^^^^^^^^^^

This is the most significant entry for me: it tells that Emacs on your
machine takes quite a lot of time to access files.  May be due to your
harddrive and your computer...

> org-agenda-get-day-entries                                    301         7.5179999999  0.0249767441
> org-agenda-get-scheduled                                      301         4.5180000000  0.0150099667
> org-mode                                                      43          3.7710000000  0.0876976744
> org-entry-get                                                 2601        2.0339999999  0.0007820069
> org-back-to-heading                                           11116       1.9679999999  0.0001770421
> org-get-property-block                                        2601        1.9089999999  0.0007339484
> outline-back-to-heading                                       11116       1.7799999999  0.0001601295
> org-set-startup-visibility                                    43          1.391         0.0323488372
> org-agenda-get-deadlines                                      301         1.36          0.0045182724
> org-get-todo-state                                            3782        1.3399999999  0.0003543098
> org-agenda-files                                              46          0.8050000000  0.0175000000
> org-cycle-internal-global                                     43          0.7810000000  0.0181627906
> org-cycle                                                     43          0.7810000000  0.0181627906
> org-install-agenda-files-menu                                 43          0.7740000000  0.0180000000
> org-agenda-skip                                               4636        0.7170000000  0.0001546591
> org-agenda-get-sexps                                          301         0.7020000000  0.0023322259
> outline-next-heading                                          7764        0.6780000000  8.73...e-005
> org-overview                                                  43          0.6720000000  0.0156279069
> outline-map-region                                            43          0.6090000000  0.0141627906
> org-load-modules-maybe                                        86          0.594         0.0069069767
> org-time-string-to-absolute                                   3759        0.5170000000  0.0001375365
> org-parse-time-string                                         4088        0.5           0.0001223091
> org-set-regexps-and-options                                   43          0.4970000000  0.0115581395
> org-cycle-hide-drawers                                        86          0.4050000000  0.0047093023
> org-find-base-buffer-visiting                                 344         0.4040000000  0.0011744186
> org-agenda-get-timestamps                                     301         0.3590000000  0.0011926910
> org-agenda-get-blocks                                         301         0.3470000000  0.0011528239
> org-diary-sexp-entry                                          714         0.3280000000  0.0004593837
> org-flag-drawer                                               1396        0.2970000000  0.0002127507
> org-before-first-heading-p                                    2602        0.2820000000  0.0001083781
> org-outline-level                                             4313        0.265         6.14...e-005
> org-cycle-show-empty-lines                                    86          0.2050000000  0.0023837209
> org-agenda-finalize-entries                                   4           0.203         0.05075
> org-macro-initialize-templates                                43          0.1730000000  0.0040232558
> org-get-tags-at                                               84          0.1710000000  0.0020357142
> org-up-heading-safe                                           225         0.14          0.0006222222
> org-entries-lessp                                             372         0.14          0.0003763440
> org-all-targets                                               43          0.138         0.0032093023
> org-update-radio-target-regexp                                43          0.138         0.0032093023
> org-babel-hide-all-hashes                                     43          0.127         0.0029534883
> org-time-string-to-time                                       168         0.125         0.0007440476
> org-closest-date                                              161         0.11          0.0006832298
> org-agenda-format-item                                        84          0.109         0.0012976190
> org-in-src-block-p                                            4636        0.093         2.00...e-005
> org-file-contents                                             16          0.093         0.0058125
> org-agenda-align-tags                                         1           0.093         0.093
> org-agenda-finalize                                           1           0.093         0.093
> org-refresh-category-properties                               43          0.092         0.0021395348
> org-set-visibility-according-to-property                      43          0.078         0.0018139534
> org-fit-window-to-buffer                                      1           0.078         0.078
> org-agenda-skip-eval                                          9124        0.078         8.54...e-006
> org-agenda-fit-window-to-buffer                               1           0.078         0.078
> outline-flag-region                                           1672        0.078         4.66...e-005
> org-agenda-highlight-todo                                     84          0.063         0.00075
> org-agenda-todayp                                             609         0.062         0.0001018062
> ...
>
> Is this normal?  For a 6-year old laptop?

... but for a 6 yo computer, I'd say it's mostly related to the
harddrive.  At this stage, putting on the entries in a single file will
boost things *a lot*.  (Less calls to org-get-agenda-file-buffer, to
org-mode, etc.)

> In particular, when looking at the top entries:
>
> org-agenda-list                                               1           19.156        19.156
> org-agenda-prepare                                            1           11.141        11.141
> org-agenda-prepare-buffers                                    1           11.078        11.078
> org-get-agenda-file-buffer                                    344         11.064000000  0.0321627906
> org-agenda-get-day-entries                                    301         7.5179999999  0.0249767441
> org-agenda-get-scheduled                                      301         4.5180000000  0.0150099667
> org-mode                                                      43          3.7710000000  0.0876976744
>
> I'm amazed by:
>
> - the difference between the 3 seconds for the 43 calls to `org-mode' and the
>   final 19 seconds for the list to be displayed

3 secs for 43 calls to org-mode is already quite a lot...

> - the difference as well between the top 2 functions: `org-agenda-prepare'
>   "only" takes 11 seconds, while `org-agenda-list' consumes another
>   8 seconds...
>
> Any comment on this?

Well, apart from gathering entries in less files, and apart from 
wishing that I have some time to try to optimize the agenda generation, 
I cannot comment that much :/

-- 
 Bastien

  parent reply	other threads:[~2012-12-25  2:48 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-21 22:25 elp-instrument-package does not return anything Sebastien Vauban
2012-12-21 23:05 ` Samuel Wales
2012-12-24 13:44 ` Sebastien Vauban
2012-12-24 17:17   ` Samuel Wales
2012-12-25 16:13     ` Sebastien Vauban
2012-12-25 19:33       ` Samuel Wales
2012-12-25  2:47   ` Bastien [this message]
2012-12-25 16:24     ` Sebastien Vauban
2012-12-29 10:09       ` Bastien

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=87y5gmrgo8.fsf@bzg.ath.cx \
    --to=bzg@altern.org \
    --cc=public-emacs-orgmode-mXXj517/zsQ@plane.gmane.org \
    --cc=public-wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@plane.gmane.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).