emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* elp-instrument-package does not return anything
@ 2012-12-21 22:25 Sebastien Vauban
  2012-12-21 23:05 ` Samuel Wales
  2012-12-24 13:44 ` Sebastien Vauban
  0 siblings, 2 replies; 9+ messages in thread
From: Sebastien Vauban @ 2012-12-21 22:25 UTC (permalink / raw)
  To: emacs-orgmode-mXXj517/zsQ

Hello,

For the sake of finding potential bottlenecks in my config, I'm looking back
at elp.

I've the following minimal Emacs config file for the current work:

#+begin_src emacs-lisp
(message "Loading Minimal Emacs...")

;; change the pathnames appropriately!
(add-to-list 'load-path (expand-file-name "~/src/org-mode/lisp"))
(add-to-list 'load-path (expand-file-name "~/src/org-mode/contrib/lisp"))

(add-to-list 'auto-mode-alist '("\\.\\(org\\|org_archive\\|txt\\)$" . org-mode))

;; profile some times...
(when (require 'elp)
  ;; the most important ones
  (elp-instrument-package "org")
  (elp-instrument-package "org-agenda")
  (elp-instrument-package "outline")
  (elp-instrument-package "font-lock")
  (elp-instrument-package "flyspell")
  (elp-instrument-package "ispell")
  (elp-instrument-package "emacs-leuven")
  (elp-instrument-package "calendar")
  (elp-instrument-package "cal-iso")
  (elp-instrument-package "diary-lib")
  (global-set-key "\C-ce" 'elp-results))

(setq org-agenda-files
      (append
       ;; org-directory
       (file-expand-wildcards "~/Personal/*.org")
       (file-expand-wildcards "~/Projects/*.org")))

(defconst em/emacs-load-time-start (float-time))

(org-agenda-list)

(message "Loading Minimal Emacs... Done (in %.2f s)"
         (- (float-time) em/emacs-load-time-start))
#+end_src

Quite simple, no?

Though, for whatever unknown reason, when calling elp-results, I just get info
about font-lock:

--8<---------------cut here---------------start------------->8---
font-lock-mode                                             177         0.03          0.0001694915
font-lock-default-function                                 177         0.015         8.47...e-005
font-lock-compile-keywords                                 44          0.015         0.0003409090
font-lock-mode-internal                                    88          0.015         0.0001704545
font-lock-set-defaults                                     89          0.015         0.0001685393
font-lock-fontify-region                                   1           0.0           0.0
font-lock-choose-keywords                                  44          0.0           0.0
font-lock-extend-jit-lock-region-after-change              9           0.0           0.0
font-lock-default-fontify-region                           1           0.0           0.0
font-lock-value-in-major-mode                              220         0.0           0.0
font-lock-default-unfontify-region                         1           0.0           0.0
font-lock-specified-p                                      309         0.0           0.0
font-lock-unfontify-region                                 1           0.0           0.0
font-lock-fontify-syntactically-region                     1           0.0           0.0
font-lock-initial-fontify                                  177         0.0           0.0
font-lock-fontify-keywords-region                          1           0.0           0.0
font-lock-turn-on-thing-lock                               88          0.0           0.0
font-lock-compile-keyword                                  1628        0.0           0.0
font-lock-change-mode                                      44          0.0           0.0
font-lock-extend-region-multiline                          1           0.0           0.0
font-lock-extend-region-wholelines                         1           0.0           0.0
font-lock-eval-keywords                                    88          0.0           0.0
--8<---------------cut here---------------end--------------->8---

Nothing about Org!?

I'm really out of ideas about what to do to get those Org profiling results?
Any idea of what I'm doing wrong (I guess)?

Best regards,
  Seb

-- 
Sebastien Vauban

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  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
  1 sibling, 0 replies; 9+ messages in thread
From: Samuel Wales @ 2012-12-21 23:05 UTC (permalink / raw)
  To: Sebastien Vauban; +Cc: emacs-orgmode

org-agenda is implied by org.

When I instrument org- and run something, Emacs crashes.

Probably unrelated to your issue though.

-- 
The Kafka Pandemic: http://thekafkapandemic.blogspot.com

The disease DOES progress.  MANY people have died from it.  ANYBODY
can get it.  There is no hope without action.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  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  2:47   ` Bastien
  1 sibling, 2 replies; 9+ messages in thread
From: Sebastien Vauban @ 2012-12-24 13:44 UTC (permalink / raw)
  To: emacs-orgmode-mXXj517/zsQ

Hello,

(I did not see my previous answer to this, so redoing it)

"Sebastien Vauban" wrote:
> For the sake of finding potential bottlenecks in my config, I'm looking back
> at elp.
>
> I've the following minimal Emacs config file for the current work: [...]
>
> Though, for whatever unknown reason, when calling elp-results, I just get info
> about font-lock.
>
> Nothing about Org!?
>
> I'm really out of ideas about what to do to get those Org profiling results?
> Any idea of what I'm doing wrong (I guess)?

As found out by Bastien, one needs to require the packages first, before
instrumenting them. Not automatic!

OK, so, with the new Emacs *minimal config*:

--8<---------------cut here---------------start------------->8---
;; activate debugging
(setq debug-on-error t)
(setq debug-on-quit t)

;; change the pathnames appropriately!
(add-to-list 'load-path (expand-file-name "~/src/org-mode/lisp"))
(add-to-list 'load-path (expand-file-name "~/src/org-mode/contrib/lisp"))

(require 'org)
(require 'org-agenda)
(require 'outline)
(require 'font-lock)
(require 'flyspell)
(require 'ispell)
(require 'calendar)
(require 'cal-iso)
(require 'diary-lib)

;; profile some times... CAUTION: require the packages first (to get results)!
(when (require 'elp)
  ;; the most important ones
  (elp-instrument-package "org")
  (elp-instrument-package "org-agenda")
  (elp-instrument-package "outline")
  (elp-instrument-package "font-lock")
  (elp-instrument-package "flyspell")
  (elp-instrument-package "ispell")
  (elp-instrument-package "emacs-leuven")
  (elp-instrument-package "calendar")
  (elp-instrument-package "cal-iso")
  (elp-instrument-package "diary-lib")

  (global-set-key "\C-ce" 'elp-results))

;; improve readability of profile results, give milliseconds
(defun elp-pack-number (number width)
  (format (concat "%" (number-to-string (- width 3)) ".2f")
	  (* 100 (string-to-number number))))

(setq org-agenda-files
      (append
       ;; org-directory
       (file-expand-wildcards "~/Personal/*.org")
       (file-expand-wildcards "~/Projects/*.org")))

(defconst em/emacs-load-time-start (float-time))
(org-agenda-list)
(message "Loading Minimal Emacs... Done (in %.2f s)"
         (- (float-time) em/emacs-load-time-start))
--8<---------------cut here---------------end--------------->8---

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:

--8<---------------cut here---------------start------------->8---
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
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
...
--8<---------------cut here---------------end--------------->8---

Is this normal?  For a 6-year old laptop?

In particular, when looking at the top entries:

--8<---------------cut here---------------start------------->8---
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
--8<---------------cut here---------------end--------------->8---

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

- 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?

Best regards,
Seb

-- 
Sebastien Vauban

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-24 13:44 ` Sebastien Vauban
@ 2012-12-24 17:17   ` Samuel Wales
  2012-12-25 16:13     ` Sebastien Vauban
  2012-12-25  2:47   ` Bastien
  1 sibling, 1 reply; 9+ messages in thread
From: Samuel Wales @ 2012-12-24 17:17 UTC (permalink / raw)
  To: Sebastien Vauban; +Cc: emacs-orgmode

One way to ensure that the symbols exist might be to run the function
first without instrumenting, then instrument?

Can't help you with the optimizing, but I strongly support your
efforts.  Speeding up agenda would be a boon.

Samuel

-- 
The Kafka Pandemic: http://thekafkapandemic.blogspot.com

The disease DOES progress.  MANY people have died from it.  ANYBODY
can get it.  There is no hope without action.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-24 13:44 ` Sebastien Vauban
  2012-12-24 17:17   ` Samuel Wales
@ 2012-12-25  2:47   ` Bastien
  2012-12-25 16:24     ` Sebastien Vauban
  1 sibling, 1 reply; 9+ messages in thread
From: Bastien @ 2012-12-25  2:47 UTC (permalink / raw)
  To: Sebastien Vauban; +Cc: public-emacs-orgmode-mXXj517/zsQ



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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-24 17:17   ` Samuel Wales
@ 2012-12-25 16:13     ` Sebastien Vauban
  2012-12-25 19:33       ` Samuel Wales
  0 siblings, 1 reply; 9+ messages in thread
From: Sebastien Vauban @ 2012-12-25 16:13 UTC (permalink / raw)
  To: emacs-orgmode-mXXj517/zsQ

Hi Samuel,

Samuel Wales wrote:
> One way to ensure that the symbols exist might be to run the function
> first without instrumenting, then instrument?

That'd solve the problem if all such functions do have autoloads. That should
be the case for Org, but not necessarily for all other packages.

But explicitly requiring the packages is as easy -- my problem was not knowing
we absolutely had to do it!

> Can't help you with the optimizing, but I strongly support your
> efforts.  Speeding up agenda would be a boon.

Thanks!

Best regards,
  Seb

-- 
Sebastien Vauban

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-25  2:47   ` Bastien
@ 2012-12-25 16:24     ` Sebastien Vauban
  2012-12-29 10:09       ` Bastien
  0 siblings, 1 reply; 9+ messages in thread
From: Sebastien Vauban @ 2012-12-25 16:24 UTC (permalink / raw)
  To: emacs-orgmode-mXXj517/zsQ

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-25 16:13     ` Sebastien Vauban
@ 2012-12-25 19:33       ` Samuel Wales
  0 siblings, 0 replies; 9+ messages in thread
From: Samuel Wales @ 2012-12-25 19:33 UTC (permalink / raw)
  To: Sebastien Vauban; +Cc: emacs-orgmode

On 12/25/12, Sebastien Vauban <wxhgmqzgwmuf@spammotel.com> wrote:
> That'd solve the problem if all such functions do have autoloads. That
> should
> be the case for Org, but not necessarily for all other packages.

In which case you get an error, thus ensuring.  :)

Samuel

-- 
The Kafka Pandemic: http://thekafkapandemic.blogspot.com

The disease DOES progress.  MANY people have died from it.  ANYBODY
can get it.  There is no hope without action.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: elp-instrument-package does not return anything
  2012-12-25 16:24     ` Sebastien Vauban
@ 2012-12-29 10:09       ` Bastien
  0 siblings, 0 replies; 9+ messages in thread
From: Bastien @ 2012-12-29 10:09 UTC (permalink / raw)
  To: Sebastien Vauban; +Cc: public-emacs-orgmode-mXXj517/zsQ



Hi Sébastien,

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

> 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).

+100!

-- 
 Bastien

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2012-12-29 10:09 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
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
2012-12-29 10:09       ` Bastien

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).