From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean Louis Newsgroups: gmane.emacs.devel Subject: Re: Emacs taking long long time for M-x memory-report Date: Fri, 2 Apr 2021 18:49:52 +0300 Message-ID: References: <834kgog0re.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=_stw1.rcdrun.com-18937-1617378772-0001-2" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32223"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/2.0.6 (2021-03-06) Cc: emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Apr 02 17:53:46 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lSM7F-0008Hv-Ly for ged-emacs-devel@m.gmane-mx.org; Fri, 02 Apr 2021 17:53:45 +0200 Original-Received: from localhost ([::1]:36066 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lSM7E-00012A-Nu for ged-emacs-devel@m.gmane-mx.org; Fri, 02 Apr 2021 11:53:44 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:38110) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lSM6V-0000aL-Au for emacs-devel@gnu.org; Fri, 02 Apr 2021 11:52:59 -0400 Original-Received: from stw1.rcdrun.com ([217.170.207.13]:40089) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lSM6R-000479-52; Fri, 02 Apr 2021 11:52:58 -0400 Original-Received: from localhost ([::ffff:41.202.241.38]) (AUTH: PLAIN securesender, TLS: TLS1.3,256bits,ECDHE_RSA_AES_256_GCM_SHA384) by stw1.rcdrun.com with ESMTPSA id 0000000000027F39.0000000060673DD2.000049F9; Fri, 02 Apr 2021 08:52:49 -0700 Mail-Followup-To: Eli Zaretskii , emacs-devel@gnu.org Content-Disposition: inline In-Reply-To: <834kgog0re.fsf@gnu.org> Received-SPF: pass client-ip=217.170.207.13; envelope-from=bugs@gnu.support; helo=stw1.rcdrun.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:267304 Archived-At: This is a MIME-formatted message. If you see this text it means that your E-mail software does not support MIME-formatted messages. --=_stw1.rcdrun.com-18937-1617378772-0001-2 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline * Eli Zaretskii [2021-04-02 18:33]: > > Date: Fri, 2 Apr 2021 18:03:43 +0300 > > From: Jean Louis > > > > I am observing that M-x memory-report is notw taking long time, like > > more than 3 minutes. It did not finish yet while I am writing this. > > > > What should I do to discover where is the problem? > > Profile it. (And it isn't necessarily "a problem".) It looks like my read-from-buffer which edits buffer only is taking much. 5977 100% - ... 8 0% - minibuffer-complete 8 0% - completion-in-region 8 0% - completion--in-region 8 0% - # 8 0% - apply 8 0% - # 8 0% - completion--in-region-1 8 0% - completion--do-completion 3 0% - minibuffer-completion-help 1 0% - temp-buffer-window-show 1 0% - display-buffer 1 0% - display-buffer-at-bottom 1 0% - window--display-buffer 1 0% - # 1 0% - display-completion-list 1 0% - completion--insert-strings 1 0% - mapcar 1 0% # 2 0% - completion-all-completions 2 0% - completion--nth-completion 2 0% - completion--some 2 0% - # 2 0% - completion-basic-all-completions 2 0% - completion-pcm--all-completions 2 0% - all-completions 2 0% - # 2 0% complete-with-action 5 0% - completion-try-completion 5 0% - completion--nth-completion 5 0% - completion--some 5 0% - # 5 0% - completion-basic-try-completion 5 0% - try-completion 5 0% - # 5 0% complete-with-action 341 5% Automatic GC 5628 94% - let 5628 94% - cond 5628 94% - if 5628 94% - read-from-buffer 5628 94% - let 5628 94% - save-excursion 5628 94% - unwind-protect 5628 94% - recursive-edit 5628 94% - command-execute 5628 94% - call-interactively 5628 94% - funcall-interactively 8 0% - rcd-db-tabulated-edit-value 8 0% - let* 8 0% - rcd/edit-entry 8 0% - let* 8 0% - let 8 0% - cond 8 0% - if 8 0% - read-from-buffer 8 0% - let 8 0% - save-excursion 8 0% - unwind-protect 7 0% - recursive-edit 5 0% - command-execute 5 0% - call-interactively 5 0% - byte-code 5 0% - read-extended-command 5 0% - completing-read 5 0% - completing-read-default 5 0% - read-from-minibuffer 1 0% - timer-event-handler 1 0% - apply 1 0% # 5620 94% - execute-extended-command 5620 94% - command-execute 5620 94% - call-interactively 5620 94% - funcall-interactively 1 0% profiler-report 5619 94% - memory-report 51 0% - memory-report--symbol-plist 51 0% - mapatoms 50 0% - # 49 0% - memory-report--object-size 48 0% - memory-report--object-size-1 47 0% - apply 44 0% - # 34 0% - memory-report--object-size 28 0% - memory-report--object-size-1 27 0% - apply 25 0% - # 24 0% - memory-report--object-size 19 0% - memory-report--object-size-1 19 0% - apply 8 0% - # 8 0% - memory-report--interval-size 1 0% seq-reduce 7 0% - mapcar 7 0% - # 7 0% - memory-report--object-size 5 0% - memory-report--object-size-1 5 0% - apply 5 0% - # 1 0% memory-report--size 2 0% - memory-report--object-size 2 0% - memory-report--object-size-1 2 0% - apply 1 0% - # 1 0% - memory-report--object-size 1 0% - memory-report--object-size-1 1 0% - apply 1 0% # 8 0% - # 8 0% - memory-report--object-size 6 0% - memory-report--object-size-1 6 0% - apply 6 0% - # 4 0% - memory-report--object-size 3 0% - memory-report--object-size-1 2 0% apply 5568 93% - memory-report--buffers 5568 93% - mapcar 5568 93% - # 5568 93% - memory-report--buffer 5568 93% - memory-report--buffer-data 4 0% - mapcar 4 0% - # 4 0% - memory-report--object-size 4 0% - memory-report--object-size-1 4 0% - apply 1 0% - # 1 0% - memory-report--interval-size 1 0% - mapcar 1 0% - # 1 0% memory-report--object-size 1 0% - # 1 0% - memory-report--object-size 1 0% - memory-report--object-size-1 1 0% apply 1 0% # 16 0% - memory-report--object-size 16 0% - memory-report--object-size-1 16 0% - apply 15 0% - # 15 0% - memory-report--object-size 13 0% - memory-report--object-size-1 13 0% - apply 12 0% - # 1 0% memory-report--size 10 0% - memory-report--object-size 6 0% - memory-report--object-size-1 6 0% - apply 5 0% # --=_stw1.rcdrun.com-18937-1617378772-0001-2 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename="profile.txt" [profiler-profile "28.1" cpu #s(hash-table size 65 test equal rehash-size 1= =2E5 rehash-threshold 0.8125 data ([read-from-minibuffer completing-read-de= fault completing-read read-extended-command byte-code call-interactively co= mmand-execute recursive-edit unwind-protect save-excursion let read-from-bu= ffer if cond let let*] 4 ["#" apply timer-even= t-handler read-from-minibuffer completing-read-default completing-read read= -extended-command byte-code call-interactively command-execute recursive-ed= it unwind-protect save-excursion let read-from-buffer if] 1 ["#" apply memory-report--object-size-1 memory-report--object= -size "#" mapatoms memory-report--symbol-plist = memory-report funcall-interactively call-interactively command-execute exec= ute-extended-command funcall-interactively call-interactively command-execu= te recursive-edit] 10 [memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-size "#" mapatoms memory-report--symbol-plist memory-repo= rt funcall-interactively call-interactively command-execute execute-extende= d-command funcall-interactively call-interactively command-execute] 6 ["#" mapatoms memory-report--symbol-plist memory-rep= ort funcall-interactively call-interactively command-execute execute-extend= ed-command funcall-interactively call-interactively command-execute recursi= ve-edit unwind-protect save-excursion let read-from-buffer] 1 ["#" apply memory-report--object-size-1 memory-report--obje= ct-size "#" apply memory-report--object-size-1= memory-report--object-size "#" mapatoms memory= -report--symbol-plist memory-report funcall-interactively call-interactivel= y command-execute execute-extended-command] 1 [memory-report--object-size "= #" apply memory-report--object-size-1 memory-r= eport--object-size "#" apply memory-report--ob= ject-size-1 memory-report--object-size "#" app= ly memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1] 1 [memory-report--obje= ct-size "#" apply memory-report--object-size-1= memory-report--object-size "#" apply memory-r= eport--object-size-1 memory-report--object-size "#" mapatoms memory-report--symbol-plist memory-report funcall-interactive= ly call-interactively command-execute] 5 [apply memory-report--object-size-= 1 memory-report--object-size "#" apply memory-= report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-size "#" mapatoms memory-report--symbol-plist memory-repor= t funcall-interactively] 3 [apply memory-report--object-size-1 memory-repor= t--object-size "#" apply memory-report--object= -size-1 memory-report--object-size "#" mapatoms= memory-report--symbol-plist memory-report funcall-interactively call-inter= actively command-execute execute-extended-command funcall-interactively] 2 = [memory-report--object-size "#" apply memory-r= eport--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report-= -object-size "#" mapatoms memory-report--symbol= -plist] 2 [memory-report--object-size-1 memory-report--object-size "#" mapatoms memory-report--symbol-plist memory-report = funcall-interactively call-interactively command-execute execute-extended-c= ommand funcall-interactively call-interactively command-execute recursive-e= dit unwind-protect save-excursion] 1 [mapatoms memory-report--symbol-plist = memory-report funcall-interactively call-interactively command-execute exec= ute-extended-command funcall-interactively call-interactively command-execu= te recursive-edit unwind-protect save-excursion let read-from-buffer if] 1 = [memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-siz= e "#" mapatoms memory-report--symbol-plist memo= ry-report funcall-interactively call-interactively command-execute execute-= extended-command funcall-interactively call-interactively] 1 [apply memory-= report--object-size-1 memory-report--object-size "#" mapatoms memory-report--symbol-plist memory-report funcall-interactiv= ely call-interactively command-execute execute-extended-command funcall-int= eractively call-interactively command-execute recursive-edit unwind-protect= ] 3 [memory-report--object-size "#" mapatoms me= mory-report--symbol-plist memory-report funcall-interactively call-interact= ively command-execute execute-extended-command funcall-interactively call-i= nteractively command-execute recursive-edit unwind-protect save-excursion l= et] 1 [memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--obje= ct-size "#" apply memory-report--object-size-1= memory-report--object-size "#" apply memory-r= eport--object-size-1 memory-report--object-size "#" apply] 1 [seq-reduce memory-report--interval-size "#" apply memory-report--object-size-1 memory-report--object-size= "#" apply memory-report--object-size-1 memory= -report--object-size "#" apply memory-report--= object-size-1 memory-report--object-size "#" ma= patoms] 1 [apply memory-report--object-size-1 memory-report--object-size "#= " apply memory-report--object-size-1 memory-re= port--object-size "#" apply memory-report--obj= ect-size-1 memory-report--object-size "#" appl= y memory-report--object-size-1 memory-report--object-size "#"] 2 ["#" apply memory-report--o= bject-size-1 memory-report--object-size "#" ap= ply memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-= size memory-report--buffer-data memory-report--buffer "#" mapcar] 5 [memory-report--size "#= " apply memory-report--object-size-1 memory-report--object-size "#" mapcar memory-report--interval-size "#" apply memory-report--object-size-1 memory-report--object-si= ze "#" apply memory-report--object-size-1 memo= ry-report--object-size] 1 [memory-report--object-size "#" mapcar memory-report--interval-size "#" apply memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report-= -object-size "#" apply memory-report--object-s= ize-1 memory-report--object-size] 2 [apply memory-report--object-size-1 mem= ory-report--object-size memory-report--buffer-data memory-report--buffer "#= " mapcar memory-report--buffers memory-report= funcall-interactively call-interactively command-execute execute-extended-= command funcall-interactively call-interactively command-execute] 1 [apply = memory-report--object-size-1 memory-report--object-size "#" mapcar memory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report fun= call-interactively call-interactively command-execute execute-extended-comm= and funcall-interactively] 1 [memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-siz= e memory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report funcall-interactively= call-interactively command-execute execute-extended-command funcall-intera= ctively] 2 [memory-report--object-size "#" app= ly memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-s= ize memory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report funcall-interactive= ly] 4 ["#" apply memory-report--object-size-1= memory-report--object-size "#" mapcar memory-r= eport--buffer-data memory-report--buffer "#" = mapcar memory-report--buffers memory-report funcall-interactively call-inte= ractively command-execute execute-extended-command] 1 ["#" apply memory-report--object-size-1 memory-report--object-size = "#" apply memory-report--object-size-1 memory-= report--object-size "#" apply memory-report--o= bject-size-1 memory-report--object-size "#" ma= pcar memory-report--interval-size "#"] 1 [appl= y memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-si= ze "#" mapcar memory-report--interval-size "#<= compiled 0x14bd6ffb7d7fe0da>" apply memory-report--object-size-1 memory-rep= ort--object-size "#" apply] 1 ["#" apply memory-report--object-size-1 memory-report--object-= size "#" mapcar memory-report--interval-size "= #" apply memory-report--object-size-1 memory-r= eport--object-size "#" apply memory-report--ob= ject-size-1 memory-report--object-size "#"] 2 = ["#" apply memory-report--object-size-1 memory= -report--object-size "#" apply memory-report--= object-size-1 memory-report--object-size "#" a= pply memory-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object= -size] 2 [memory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report funcall-inter= actively call-interactively command-execute execute-extended-command funcal= l-interactively call-interactively command-execute recursive-edit unwind-pr= otect save-excursion] 5548 [apply memory-report--object-size-1 memory-repor= t--object-size "#" apply memory-report--object= -size-1 memory-report--object-size "#" mapcar m= emory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report funcall-interactively] 1= [memory-report--size "#" apply memory-report-= -object-size-1 memory-report--object-size "#" = apply memory-report--object-size-1 memory-report--object-size memory-report= --buffer-data memory-report--buffer "#" mapca= r memory-report--buffers memory-report funcall-interactively] 1 [apply memo= ry-report--object-size-1 memory-report--object-size "#" apply memory-report--object-size-1 memory-report--object-size mem= ory-report--buffer-data memory-report--buffer "#" mapcar memory-report--buffers memory-report funcall-interactively call= -interactively command-execute] 1 [memory-report--object-size "#" mapcar memory-report--interval-size "#" apply memory-report--object-size-1 memory-report--object-size= "#" mapcar memory-report--buffer-data memory-r= eport--buffer "#" mapcar memory-report--buffe= rs memory-report] 1 [apply memory-report--object-size-1 memory-report--obje= ct-size "#" apply memory-report--object-size-1= memory-report--object-size "#" apply memory-r= eport--object-size-1 memory-report--object-size memory-report--buffer-data = memory-report--buffer "#" mapcar memory-repor= t--buffers] 1 ["#" apply memory-report--object= -size-1 memory-report--object-size "#" apply m= emory-report--object-size-1 memory-report--object-size memory-report--buffe= r-data memory-report--buffer "#" mapcar memor= y-report--buffers memory-report funcall-interactively call-interactively] 1= [recursive-edit unwind-protect save-excursion let read-from-buffer if cond= let let* rcd/edit-entry let* rcd-db-tabulated-edit-value funcall-interacti= vely call-interactively command-execute recursive-edit] 2 [unwind-protect s= ave-excursion let read-from-buffer if cond let let* rcd/edit-entry let* rcd= -db-tabulated-edit-value funcall-interactively call-interactively command-e= xecute recursive-edit unwind-protect] 1 [complete-with-action "#" try-completion completion-basic-try-completion "#" completion--some completion--nth-completion complet= ion-try-completion completion--do-completion completion--in-region-1 "#" apply "#" completio= n--in-region completion-in-region minibuffer-complete] 5 [complete-with-act= ion "#" all-completions completion-pcm--all-com= pletions completion-basic-all-completions "#" = completion--some completion--nth-completion completion-all-completions mini= buffer-completion-help completion--do-completion completion--in-region-1 "#= " apply "#" compl= etion--in-region] 2 ["#" mapcar completion--ins= ert-strings display-completion-list "#" window= --display-buffer display-buffer-at-bottom display-buffer temp-buffer-window= -show minibuffer-completion-help completion--do-completion completion--in-r= egion-1 "#" apply "#" completion--in-region] 1 [profiler-report funcall-interactively call-i= nteractively command-execute execute-extended-command funcall-interactively= call-interactively command-execute recursive-edit unwind-protect save-excu= rsion let read-from-buffer if cond let] 1 [Automatic\ GC] 341)) (24679 1529= 6 446913 732000) nil] --=_stw1.rcdrun.com-18937-1617378772-0001-2--