From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sebastien Vauban" Subject: Re: elp-instrument-package does not return anything Date: Tue, 25 Dec 2012 17:24:21 +0100 Message-ID: <80k3s685hm.fsf@somewhere.org> References: <80pq23niub.fsf@somewhere.org> <804njbpntl.fsf@somewhere.org> <87y5gmrgo8.fsf@bzg.ath.cx> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org To: emacs-orgmode-mXXj517/zsQ@public.gmane.org Hi Bastien, Bastien wrote: > "Sebastien Vauban" wrote: > >> Generating the agenda for 43 files, and more or less 75 entries to displ= ay, >> 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 multi= ple 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 noti= ce 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' an= d 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). A= nd 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 (=3D this case) vs with my c= ustom settings... >> - the difference as well between the top 2 functions: `org-agenda-prepar= e' >> "only" takes 11 seconds, while `org-agenda-list' consumes another >> 8=C2=A0seconds... >> >> Any comment on this? > > Well, apart from gathering entries in less files, and apart from=20 > wishing that I have some time to try to optimize the agenda generation,=20 > 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 eve= ry view we do have to generate). Best regards, Seb --=20 Sebastien Vauban