From: "Sebastien Vauban" <wxhgmqzgwmuf-geNee64TY+gS+FvcfC7Uqw@public.gmane.org>
To: emacs-orgmode-mXXj517/zsQ@public.gmane.org
Subject: Re: elp-instrument-package does not return anything
Date: Tue, 25 Dec 2012 17:24:21 +0100 [thread overview]
Message-ID: <80k3s685hm.fsf@somewhere.org> (raw)
In-Reply-To: 87y5gmrgo8.fsf@bzg.ath.cx
Hi Bastien,
Bastien wrote:
> "Sebastien Vauban" wrote:
>
>> 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...
Though, I can ensure you that, 2 weeks ago, I did run Windows' defrag multiple
times -- and it did change the colors shown in its analysis phase. For the
rest, not sure to notice any speedup, however. I mean: sure, I did not notice
any real difference. But better it's done, anyway.
>> 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.)
Clearly, I don't have SSD disks yet...
Regarding putting more entries in less files, I cannot really say I'm able to
do it: apart from one generic "work" file and one generic "life" file, the
other files are project-related, and are best viewed/edited as one unit.
Some of them are even located in directories under SVN, along the the other
files of the same project.
But, OK, thanks for the advice anyway.
>> 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...
I thought that this was pretty normal (~ 0.09 seconds per org-mode call). And
that's even without any of my custom config here: in real life, I'm clearly
over that, with (for example) ispell processes launched and other-things-
hidden-in-hooks...
Good to know that my real-life use case is, then, seen as much too high... I
will have to compare profiling results without (= this case) vs with my custom
settings...
>> - 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 :/
OK. Thanks for answering anyway!
To conclude, that means we should never forget about SSD-less Org-users like
me, and as well be once again delighted by the work done by Max (caching the
agenda, so that these ugly figures are only for the first generation of every
view we do have to generate).
Best regards,
Seb
--
Sebastien Vauban
next prev parent reply other threads:[~2012-12-25 16:24 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
2012-12-25 16:24 ` Sebastien Vauban [this message]
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=80k3s685hm.fsf@somewhere.org \
--to=wxhgmqzgwmuf-genee64ty+gs+fvcfc7uqw@public.gmane.org \
--cc=emacs-orgmode-mXXj517/zsQ@public.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).