[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] [PATCH] Fix massive slowdown in org-id-find
From: |
Nicolas Goaziou |
Subject: |
Re: [O] [PATCH] Fix massive slowdown in org-id-find |
Date: |
Wed, 25 Mar 2015 14:04:35 +0100 |
Florian Beck <address@hidden> writes:
>>> Could you profile it?
>
> Here are the results:
>
> With my setup and the patch I get, using
>
> (let ((time (current-time)))
> (org-id-find "zangwill.nick_2014:aesthetic.judgment")
> (format "%ss" (time-to-seconds (time-subtract (current-time) time))))
>
> --> "0.027756516s"
>
> Without my patch, the result is
>
> --> "16.104403749s"
>
> profile-report returns:
>
> - command-execute 16095 99%
> - call-interactively 16095 99%
> - funcall-interactively 15905 98%
> - eval-last-sexp 15879 98%
> - elisp--eval-last-sexp 15879 98%
> - eval 15879 98%
> - let 15879 98%
> - org-id-find 15879 98%
> - org-id-find-id-in-file 15879 98%
> - org-find-entry-with-id 15879 98%
> - org-find-property 15879 98%
> - save-excursion 15879 98%
> - let 15879 98%
> - catch 15879 98%
> - while 15879 98%
> - if 13311 82%
> - if 13311 82%
> - equal 13311 82%
> - org-entry-get 11955 74%
> - org-get-property-block 8876 55%
> - org-inlinetask-in-task-p 3329 20%
> org-inlinetask-outline-regexp 12 0%
> - org-back-to-heading 3009 18%
> - outline-back-to-heading 2000 12%
> outline-on-heading-p 4 0%
> org-before-first-heading-p 880 5%
> org-get-limited-outline-regexp 24 0%
> - #<compiled 0x3e8f1b9> 939 5%
> match-string-no-properties 44 0%
> - execute-extended-command 20 0%
> - sit-for 16 0%
> redisplay 16 0%
> + command-execute 4 0%
> + previous-line 6 0%
> + byte-code 190 1%
> + timer-event-handler 15 0%
> + ... 0 0%
Thank you.
Could you also send and updated patch containing the VALUE optional
argument to `org-re-property' and changing modifying only the (re ...)
line in `org-find-property', with a new profiling?
Regards,