From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Peter =?UTF-8?Q?M=C3=BCnster?= Newsgroups: gmane.emacs.bugs Subject: bug#18522: 24.4.50; mapcar is very slow Date: Wed, 01 Oct 2014 22:25:15 +0200 Message-ID: <87mw9fczbo.fsf@micropit.roche-blanche.homenet.org> References: <8738bkdjqg.fsf@micropit.roche-blanche.homenet.org> <87mw9rdawj.fsf@micropit.roche-blanche.homenet.org> <87wq8ridqz.fsf@micropit.roche-blanche.homenet.org> <831tqyvph5.fsf@gnu.org> <87lhp6q2dm.fsf@micropit.roche-blanche.homenet.org> <83vboau92s.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Trace: ger.gmane.org 1412195189 19778 80.91.229.3 (1 Oct 2014 20:26:29 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 1 Oct 2014 20:26:29 +0000 (UTC) Cc: 18522@debbugs.gnu.org To: Glenn Morris Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Oct 01 22:26:18 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XZQTa-0008Az-8R for geb-bug-gnu-emacs@m.gmane.org; Wed, 01 Oct 2014 22:26:18 +0200 Original-Received: from localhost ([::1]:58576 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XZQTZ-0005kY-RF for geb-bug-gnu-emacs@m.gmane.org; Wed, 01 Oct 2014 16:26:17 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52229) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XZQTR-0005kR-1m for bug-gnu-emacs@gnu.org; Wed, 01 Oct 2014 16:26:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XZQTL-0003O0-2w for bug-gnu-emacs@gnu.org; Wed, 01 Oct 2014 16:26:08 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:37948) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XZQTK-0003Nq-Uw for bug-gnu-emacs@gnu.org; Wed, 01 Oct 2014 16:26:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XZQTK-00052n-Cq; Wed, 01 Oct 2014 16:26:02 -0400 X-Loop: help-debbugs@gnu.org In-Reply-To: <8738bkdjqg.fsf@micropit.roche-blanche.homenet.org> Resent-From: Peter =?UTF-8?Q?M=C3=BCnster?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bugs@gnus.org Resent-Date: Wed, 01 Oct 2014 20:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18522 X-GNU-PR-Package: emacs,gnus X-GNU-PR-Keywords: moreinfo Original-Received: via spool by 18522-submit@debbugs.gnu.org id=B18522.141219512819346 (code B ref 18522); Wed, 01 Oct 2014 20:26:02 +0000 Original-Received: (at 18522) by debbugs.gnu.org; 1 Oct 2014 20:25:28 +0000 Original-Received: from localhost ([127.0.0.1]:57744 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XZQSj-00051v-QY for submit@debbugs.gnu.org; Wed, 01 Oct 2014 16:25:27 -0400 Original-Received: from smtp06.smtpout.orange.fr ([80.12.242.128]:34795 helo=smtp.smtpout.orange.fr) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XZQSb-00051f-Tb for 18522@debbugs.gnu.org; Wed, 01 Oct 2014 16:25:22 -0400 Original-Received: from micropit.roche-blanche.homenet.org ([90.32.239.99]) by mwinf5d29 with ME id xwRG1o00129N6cA03wRGiC; Wed, 01 Oct 2014 22:25:16 +0200 X-ME-Helo: micropit.roche-blanche.homenet.org X-ME-Auth: ZHJwbUB3YW5hZG9vLmZy X-ME-Date: Wed, 01 Oct 2014 22:25:16 +0200 X-ME-IP: 90.32.239.99 Original-Received: by micropit.roche-blanche.homenet.org (Postfix, from userid 1000) id EC261A61740; Wed, 1 Oct 2014 22:25:15 +0200 (CEST) User-Agent: Gnus/5.130012 (=?UTF-8?Q?=E7=9C=9F?= Gnus v0.12) Emacs/24.4.50 (gnu/linux) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:93994 Archived-At: --=-=-= Content-Type: text/plain On Wed, Oct 01 2014, Glenn Morris wrote: > http://debbugs.gnu.org/14776 Thanks. But it does not explain, why it's much faster after restarting emacs. Please find attached 2 recent profiler reports for comparison. -- Peter --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=profiler-slow3.txt - command-execute 3228 94% - call-interactively 3228 94% - funcall-interactively 3150 92% - gnus-group-select-group 3142 92% - gnus-group-read-group 3142 92% - gnus-summary-read-group 3142 92% - gnus-summary-read-group-1 3142 92% - gnus-summary-prepare 2772 81% - gnus-sort-threads 2657 78% - byte-code 2657 78% - gnus-sort-threads-recursive 2657 78% - sort 2649 77% - # 2649 77% - gnus-thread-sort-by-most-recent-date 2648 77% - gnus-thread-latest-date 2648 77% - mapcar 2647 77% - # 2645 77% - safe-date-to-time 2641 77% - date-to-time 2641 77% - byte-code 2641 77% - parse-time-string 2638 77% - let 2637 77% - parse-time-tokenize 2613 76% - let 2612 76% - while 2612 76% - while 2605 76% - and 2602 76% - setq 1719 50% - parse-time-string-chars 1712 50% - save-match-data 1697 49% - let 1689 49% - unwind-protect 1680 49% - progn 1675 49% - let 26 0% - cond 19 0% string-match 1 0% - not 876 25% - setq 875 25% - parse-time-string-chars 874 25% - save-match-data 870 25% - let 868 25% - unwind-protect 865 25% - progn 861 25% - let 22 0% - cond 22 0% - string-match 4 0% setq 4 0% set-match-data 1 0% - < 2 0% setq 1 0% setq 1 0% - if 4 0% - setq 4 0% - cons 2 0% - if 2 0% - parse-integer 1 0% - let 1 0% - if 1 0% - progn 1 0% let 1 0% - while 24 0% - let 24 0% - while 23 0% - let* 20 0% - if 13 0% - progn 7 0% - while 6 0% - let 6 0% - if 6 0% - let 6 0% - if 5 0% - parse-integer 5 0% - let 4 0% - if 4 0% - progn 3 0% - let 3 0% - while 1 0% and 1 0% if 1 0% - car-safe 1 0% - prog1 1 0% setq 1 0% - and 6 0% - setq 5 0% - cond 5 0% - and 2 0% - not 1 0% eq 1 0% <= 1 0% cdr 1 0% funcall 1 0% - car-safe 6 0% - prog1 3 0% setq 2 0% and 1 0% car-safe 1 0% apply 3 0% - message-flatten-list 1 0% apply 1 0% - mapcar 7 0% - # 7 0% - gnus-sort-subthreads-recursive 7 0% - mapcar 4 0% - # 4 0% - gnus-sort-subthreads-recursive 4 0% - mapcar 4 0% - # 3 0% - gnus-sort-subthreads-recursive 3 0% - sort 3 0% - # 3 0% - gnus-thread-sort-by-most-recent-date 3 0% - gnus-thread-latest-date 3 0% - mapcar 3 0% - # 3 0% - safe-date-to-time 3 0% - date-to-time 3 0% - byte-code 3 0% - parse-time-string 2 0% - let 2 0% - parse-time-tokenize 2 0% - let 2 0% - while 2 0% while 1 0% apply 1 0% - sort 3 0% - # 3 0% - gnus-thread-sort-by-most-recent-date 3 0% - gnus-thread-latest-date 3 0% - mapcar 3 0% - # 3 0% - safe-date-to-time 3 0% - date-to-time 3 0% - byte-code 3 0% apply 2 0% - parse-time-string 1 0% - let 1 0% - while 1 0% - let 1 0% while 1 0% - gnus-summary-prepare-threads 97 2% - eval 88 2% - let 88 2% - gnus-add-text-properties 85 2% - progn 84 2% - insert 82 2% - format 80 2% - let* 54 1% - eval 54 1% - let 54 1% - eval 51 1% - gnus-summary-from-or-to-or-newsgroups 50 1% - mail-decode-encoded-address-string 49 1% - rfc2047-decode-string 35 1% - rfc2047-decode-encoded-words 16 0% - byte-code 16 0% - quoted-printable-decode-string 16 0% generate-new-buffer 5 0% - byte-code 3 0% - kill-buffer 1 0% - replace-buffer-in-windows 1 0% unrecord-window-buffer 1 0% mm-disable-multibyte 2 0% quoted-printable-decode-region 1 0% generate-new-buffer 7 0% - byte-code 6 0% kill-buffer 4 0% rfc2047-strip-backslashes-in-quoted-strings 2 0% bidi-string-mark-left-to-right 1 0% - if 2 0% if 1 0% > 1 0% - gnus-user-date 23 0% - byte-code 21 0% - eval 17 0% gnus-seconds-year 8 0% gnus-seconds-today 6 0% - + 2 0% gnus-seconds-today 1 0% gnus-summary-line-message-size 3 0% - cons 1 0% cons 1 0% - gnus-summary-highlight-line 3 0% gnus-put-text-property-excluding-characters-with-faces 1 0% - gnus-gather-threads-by-references 9 0% - mail-header-remove-comments 8 0% - byte-code 5 0% - kill-buffer 2 0% - replace-buffer-in-windows 1 0% unrecord-window-buffer 1 0% generate-new-buffer 3 0% - gnus-make-threads 1 0% - mapatoms 1 0% - # 1 0% - mapcar 1 0% # 1 0% - gnus-select-newsgroup 366 10% - gnus-fetch-headers 363 10% - gnus-get-newsgroup-headers-xover 362 10% - byte-code 354 10% - byte-code 292 8% - mail-decode-encoded-address-string 203 5% - rfc2047-decode-string 141 4% - rfc2047-decode-encoded-words 105 3% - byte-code 97 2% - quoted-printable-decode-string 86 2% generate-new-buffer 19 0% - byte-code 19 0% - kill-buffer 2 0% replace-buffer-in-windows 1 0% mm-disable-multibyte 16 0% quoted-printable-decode-region 1 0% - rfc2047-charset-to-coding-system 7 0% - mm-charset-to-coding-system 3 0% mm-coding-system-p 2 0% generate-new-buffer 16 0% - byte-code 13 0% - kill-buffer 4 0% - replace-buffer-in-windows 2 0% unrecord-window-buffer 2 0% - rfc2047-strip-backslashes-in-quoted-strings 2 0% - byte-code 2 0% forward-sexp 2 0% - mail-decode-encoded-word-string 58 1% - rfc2047-decode-encoded-words 44 1% - byte-code 43 1% - quoted-printable-decode-string 40 1% mm-disable-multibyte 7 0% - byte-code 5 0% - kill-buffer 1 0% replace-buffer-in-windows 1 0% generate-new-buffer 4 0% - byte-code 7 0% - kill-buffer 1 0% - replace-buffer-in-windows 1 0% unrecord-window-buffer 1 0% generate-new-buffer 2 0% - mail-header-remove-comments 33 0% generate-new-buffer 21 0% - byte-code 12 0% - kill-buffer 4 0% - replace-buffer-in-windows 2 0% unrecord-window-buffer 1 0% - gnus-retrieve-headers 1 0% - gnus-cache-retrieve-headers 1 0% - gnus-retrieve-headers 1 0% - nnml-retrieve-headers 1 0% - nnml-retrieve-headers-with-nov 1 0% - nnheader-insert-file-contents 1 0% mm-insert-file-contents 1 0% - gnus-summary-setup-default-charset 1 0% gnus-parameter-charset 1 0% - gnus-article-setup-buffer 1 0% gnus-get-buffer-create 1 0% - gnus-group-decoded-name 1 0% gnus-group-name-decode 1 0% - gnus-summary-setup-buffer 1 0% - gnus-summary-mode 1 0% - gnus-update-summary-mark-positions 1 0% gnus-summary-insert-line 1 0% - gnus-run-hooks 1 0% - apply 1 0% - run-hooks 1 0% - gnus-apply-kill-file 1 0% gnus-newsgroup-kill-file 1 0% - execute-extended-command 8 0% - command-execute 6 0% - call-interactively 6 0% - funcall-interactively 6 0% - profiler-report 6 0% - profiler-report-cpu 6 0% profiler-cpu-profile 6 0% - byte-code 78 2% - read-extended-command 78 2% - completing-read 78 2% - completing-read-default 78 2% - read-from-minibuffer 66 1% - redisplay_internal (C function) 1 0% menu-bar-update-buffers 1 0% - timer-event-handler 1 0% - timer-activate-when-idle 1 0% - timer--activate 1 0% timer--time-less-p 1 0% + ... 167 4% + timer-event-handler 6 0% redisplay_internal (C function) 1 0% --=-=-= Content-Type: text/plain Content-Disposition: attachment; filename=profiler-fast3.txt - command-execute 1047 84% - call-interactively 1047 84% - funcall-interactively 1002 81% - gnus-group-select-group 995 80% - gnus-group-read-group 995 80% - gnus-summary-read-group 995 80% - gnus-summary-read-group-1 995 80% - gnus-summary-prepare 869 70% - gnus-sort-threads 799 64% - byte-code 799 64% - gnus-sort-threads-recursive 799 64% - sort 797 64% - # 797 64% - gnus-thread-sort-by-most-recent-date 797 64% - gnus-thread-latest-date 797 64% - mapcar 795 64% - # 791 64% - safe-date-to-time 789 63% - date-to-time 789 63% - byte-code 789 63% - parse-time-string 786 63% - let 786 63% - parse-time-tokenize 762 61% - let 762 61% - while 762 61% - while 754 61% - and 750 60% - setq 469 38% - parse-time-string-chars 467 37% - save-match-data 450 36% - let 444 35% - unwind-protect 440 35% - progn 436 35% - let 29 2% - cond 25 2% - string-match 6 0% setq 5 0% - not 272 22% - setq 272 22% - parse-time-string-chars 269 21% - save-match-data 265 21% - let 261 21% - unwind-protect 261 21% - progn 260 21% - let 13 1% - cond 12 0% - string-match 4 0% setq 4 0% - < 2 0% setq 2 0% setq 2 0% - if 6 0% - setq 5 0% - cons 5 0% - if 4 0% - parse-integer 3 0% - let 3 0% - if 3 0% - progn 3 0% - let 3 0% - while 2 0% - and 1 0% - setq 1 0% digit-char-p 1 0% if 1 0% - while 24 1% - let 24 1% - while 24 1% - let* 23 1% - if 18 1% - progn 14 1% - while 14 1% - let 14 1% - if 12 0% - let 12 0% - if 12 0% - parse-integer 9 0% - let 8 0% - if 8 0% - progn 7 0% - let 7 0% - if 3 0% or 2 0% - while 2 0% setq 1 0% - and 1 0% setq 1 0% funcall 2 0% - rplaca 1 0% nthcdr 1 0% - and 3 0% - not 2 0% nth 1 0% setq 1 0% - car-safe 3 0% - prog1 2 0% setq 2 0% apply 3 0% - gnus-summary-prepare-threads 64 5% - eval 59 4% - let 59 4% - gnus-add-text-properties 52 4% - progn 51 4% - insert 49 3% - format 48 3% - let* 29 2% - eval 28 2% - let 28 2% - eval 25 2% - gnus-summary-from-or-to-or-newsgroups 24 1% - mail-decode-encoded-address-string 16 1% - rfc2047-decode-string 11 0% - rfc2047-decode-encoded-words 3 0% - byte-code 2 0% quoted-printable-decode-string 2 0% rfc2047-charset-to-coding-system 1 0% generate-new-buffer 3 0% - rfc2047-strip-backslashes-in-quoted-strings 2 0% byte-code 1 0% byte-code 1 0% gnus-extract-address-components 6 0% bidi-string-mark-left-to-right 1 0% - if 3 0% - if 2 0% - gnus-lrm-string-p 1 0% memq 1 0% > 1 0% - 1 0% - gnus-user-date 14 1% - byte-code 14 1% - eval 8 0% gnus-seconds-year 6 0% gnus-seconds-today 2 0% gnus-summary-line-message-size 3 0% gnus-summary-highlight-line 2 0% - gnus-gather-threads-by-references 4 0% - mail-header-remove-comments 4 0% generate-new-buffer 2 0% ietf-drums-unfold-fws 1 0% - gnus-select-newsgroup 121 9% - gnus-fetch-headers 119 9% - gnus-get-newsgroup-headers-xover 117 9% - byte-code 112 9% - byte-code 93 7% - mail-decode-encoded-address-string 60 4% - rfc2047-decode-string 42 3% - rfc2047-decode-encoded-words 26 2% - byte-code 22 1% - quoted-printable-decode-string 20 1% mm-disable-multibyte 4 0% byte-code 2 0% generate-new-buffer 2 0% quoted-printable-decode-region 1 0% - rfc2047-charset-to-coding-system 2 0% mm-charset-to-coding-system 1 0% - byte-code 5 0% - kill-buffer 3 0% replace-buffer-in-windows 1 0% generate-new-buffer 4 0% rfc2047-strip-backslashes-in-quoted-strings 3 0% - mail-decode-encoded-word-string 17 1% - rfc2047-decode-encoded-words 13 1% - byte-code 12 0% - quoted-printable-decode-string 11 0% mm-disable-multibyte 5 0% generate-new-buffer 1 0% - byte-code 1 0% - kill-buffer 1 0% - replace-buffer-in-windows 1 0% unrecord-window-buffer 1 0% - quoted-printable-decode-region 1 0% mm-coding-system-p 1 0% rfc2047-charset-to-coding-system 1 0% byte-code 1 0% - mail-header-remove-comments 6 0% generate-new-buffer 3 0% byte-code 2 0% ietf-drums-unfold-fws 1 0% - gnus-retrieve-headers 2 0% - gnus-cache-retrieve-headers 2 0% - gnus-retrieve-headers 2 0% - nnml-retrieve-headers 2 0% - nnml-retrieve-headers-with-nov 2 0% - nnheader-insert-file-contents 1 0% mm-insert-file-contents 1 0% nnheader-nov-delete-outside-range 1 0% gnus-articles-to-read 1 0% mapcar 1 0% gnus-group-decoded-name 1 0% - gnus-summary-setup-buffer 1 0% - gnus-summary-mode 1 0% - gnus-update-summary-mark-positions 1 0% - gnus-summary-insert-line 1 0% - byte-code 1 0% - eval 1 0% - let 1 0% - gnus-add-text-properties 1 0% - progn 1 0% - insert 1 0% - format 1 0% - let* 1 0% - eval 1 0% - let 1 0% eval 1 0% gnus-set-global-variables 1 0% - gnus-summary-initial-limit 1 0% - mapatoms 1 0% # 1 0% - gnus-set-mode-line 1 0% - gnus-group-decoded-name 1 0% gnus-group-name-charset 1 0% - execute-extended-command 7 0% - command-execute 6 0% - call-interactively 6 0% - funcall-interactively 6 0% - profiler-report 6 0% - profiler-report-cpu 6 0% profiler-cpu-profile 6 0% - byte-code 45 3% - read-extended-command 45 3% - completing-read 45 3% - completing-read-default 45 3% read-from-minibuffer 27 2% + ... 186 15% redisplay_internal (C function) 1 0% --=-=-=--