From mboxrd@z Thu Jan 1 00:00:00 1970 From: Karl Voit Subject: Re: Performance issues after upgrading from Emacs 23.3 to 24.3+prelude Date: Thu, 9 Jan 2014 20:17:47 +0100 Message-ID: <2014-01-09T20-05-54@devnull.Karl-Voit.at> References: <2014-01-06T17-25-21@devnull.Karl-Voit.at> <871u0kp2s1.fsf@bzg.ath.cx> Reply-To: news1142@Karl-Voit.at Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39008) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W1L7H-0003gG-LD for emacs-orgmode@gnu.org; Thu, 09 Jan 2014 14:18:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W1L7C-0007ay-Rn for emacs-orgmode@gnu.org; Thu, 09 Jan 2014 14:18:07 -0500 Received: from plane.gmane.org ([80.91.229.3]:44730) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W1L7C-0007ai-He for emacs-orgmode@gnu.org; Thu, 09 Jan 2014 14:18:02 -0500 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1W1L79-0001Sm-Pq for emacs-orgmode@gnu.org; Thu, 09 Jan 2014 20:17:59 +0100 Received: from mail.michael-prokop.at ([88.198.6.110]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 09 Jan 2014 20:17:59 +0100 Received: from news1142 by mail.michael-prokop.at with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 09 Jan 2014 20:17:59 +0100 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@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org * Bastien wrote: > Karl Voit writes: > >> I guess that with Emacs prelude, I got some functionality which is >> causing these issues. So this might be of interest of other >> Emacs/prelude users as well. > > Yes, probably, since the Org version is the same :) > Better ping the Emacs prelude devs directly IMHO. Today, I did another test. I converted my config to Emacs24 with the most current Org-mode from git and without prelude at all. Unfortunately, the performance issue stayed :-( IMHO, the profiler reports showed a common pattern: a reasonable amount of CPU got into line-number-at-pos if I read the profiler report correctly. (see below) I also turned off all visible minor modes from the mode line. No change. Since prelude is out of this game, what can I check to find the source of this poor performance? profiler report (CPU) of ~M-~ of a simple list item without prelude: #+BEGIN_EXAMPLE - command-execute 1280 98% - call-interactively 1280 98% - org-metadown 1004 77% - run-hook-with-args-until-success 1004 77% - org-babel-pop-to-session-maybe 1004 77% - org-babel-get-inline-src-block-matches 1000 76% line-number-at-pos 1000 76% - byte-code 265 20% - read-extended-command 265 20% - completing-read 265 20% - completing-read-default 265 20% - read-from-minibuffer 253 19% + command-execute 43 3% + redisplay_internal (C function) 3 0% + execute-extended-command 11 0% + ... 15 1% + redisplay_internal (C function) 4 0% #+END_EXAMPLE profiler-report (CPU) of ~C-c C-c~ in a simple table without prelude: #+BEGIN_EXAMPLE command-execute 17492 94% - call-interactively 17492 94% - org-ctrl-c-ctrl-c 16137 86% - org-table-align 5844 31% + org-indent-refresh-maybe 8 0% org-table-goto-column 4 0% - run-hook-with-args-until-success 4469 24% - org-babel-execute-safely-maybe 4469 24% - org-babel-execute-maybe 4469 24% - org-babel-execute-src-block-maybe 4469 24% - org-babel-get-inline-src-block-matches 4449 23% line-number-at-pos 4449 23% org-babel-where-is-src-block-head 16 0% + byte-code 1311 7% + minibuffer-complete 33 0% + execute-extended-command 7 0% + timer-event-handler 1076 5% + ... 24 0% + redisplay_internal (C function) 14 0% #+END_EXAMPLE profiler-report (CPU) of ~M-~ of a heading containing approx. 20000 lines of appointments and notes without prelude: #+BEGIN_EXAMPLE - command-execute 123676 83% - call-interactively 123676 83% - org-metaup 115952 77% - call-interactively 87337 58% - org-move-subtree-up 87337 58% - org-move-subtree-down 87225 58% - insert-before-markers 86598 58% - org-indent-refresh-maybe 86594 58% - org-indent-add-properties 82086 55% - org-at-item-p 72884 48% - org-list-in-valid-context-p 69497 46% - org-in-block-p 69493 46% - byte-code 69421 46% - mapc 63094 42% - # 63022 42% - org-between-regexps-p 62878 42% - org-at-regexp-p 32772 22% byte-code 32716 21% byte-code 16 0% outline-previous-heading 3188 2% outline-next-heading 2751 1% org-list-item-body-column 691 0% + org-clean-visibility-after-subtree-move 587 0% + outline-end-of-subtree 12 0% + org-get-last-sibling 12 0% + hide-subtree 8 0% + org-first-sibling-p 4 0% - run-hook-with-args-until-success 28615 19% - org-babel-load-in-session-maybe 28615 19% - org-babel-get-inline-src-block-matches 28611 19% line-number-at-pos 28603 19% + thing-at-point 4 0% org-babel-where-is-src-block-head 4 0% + byte-code 7423 4% + list 147 0% + previous-line 44 0% + minibuffer-complete 33 0% + next-line 32 0% + execute-extended-command 11 0% + org-return 8 0% + org-yank 8 0% + kill-ring-save 6 0% + org-cycle 6 0% scroll-up-command 3 0% + org-self-insert-command 3 0% - timer-event-handler 24395 16% - byte-code 24388 16% - apply 24388 16% - org-indent-initialize-agent 24338 16% - org-indent-initialize-buffer 24335 16% - byte-code 24335 16% - org-indent-add-properties 18006 12% - org-at-item-p 8487 5% - org-list-in-valid-context-p 6184 4% - org-in-block-p 6180 4% - byte-code 6076 4% - mapc 4666 3% - # 4630 3% - org-between-regexps-p 4546 3% org-at-regexp-p 40 0% byte-code 8 0% outline-next-heading 741 0% outline-previous-heading 585 0% org-get-indentation 1326 0% org-list-item-body-column 387 0% org-inlinetask-in-task-p 87 0% + byte-code 85 0% + org-element--cache-sync 32 0% appt-check 4 0% + blink-cursor-start 4 0% timer-activate-when-idle 3 0% + ... 574 0% + redisplay_internal (C function) 83 0% + xselect-convert-to-string 11 0% internal-timer-start-idle 8 0% #+END_EXAMPLE -- mail|git|SVN|photos|postings|SMS|phonecalls|RSS|CSV|XML to Org-mode: > get Memacs from https://github.com/novoid/Memacs < https://github.com/novoid/extract_pdf_annotations_to_orgmode + more on github