From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#18522: 24.4.50; mapcar is very slow Date: Tue, 23 Feb 2016 18:23:56 +0200 Message-ID: <8360xfjsyr.fsf@gnu.org> References: <8738bkdjqg.fsf@micropit.roche-blanche.homenet.org> <87wpqh9gm3.fsf@gnus.org> <87io1nnx88.fsf@roche-blanche.net> <87vb5l8en7.fsf@gnus.org> <83wpq1rt5o.fsf@gnu.org> <8737so5neo.fsf@gnus.org> <831t87re7a.fsf@gnu.org> <87bn7b3hnz.fsf@roche-blanche.net> <83lh6fpv4z.fsf@gnu.org> <87h9h2xr9k.fsf@roche-blanche.net> <56C99AD0.2000309@gmx.at> <87wppywbaz.fsf@roche-blanche.net> <87d1rquo4a.fsf@roche-blanche.net> <878u2eun9o.fsf@roche-blanche.net> <834md2niqt.fsf@gnu.org> <87k2lyszy2.fsf@roche-blanche.net> <83bn79n66p.fsf@gnu.org> <87vb5hry9y.fsf@roche-blanche.net> <83r3g4lnor.fsf@gnu.org> <87r3g4o4uw.fsf@roche-blanche.net> <83h9h0jwfo.fsf@gnu.org> <87mvqru119.fsf@roche-blanche.net> Reply-To: Eli Zaretskii NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1456244892 25649 80.91.229.3 (23 Feb 2016 16:28:12 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 23 Feb 2016 16:28:12 +0000 (UTC) Cc: larsi@gnus.org, 18522@debbugs.gnu.org To: Peter =?UTF-8?Q?M=C3=BCnster?= Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Tue Feb 23 17:28:02 2016 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 1aYFof-0001Tp-Bl for geb-bug-gnu-emacs@m.gmane.org; Tue, 23 Feb 2016 17:28:01 +0100 Original-Received: from localhost ([::1]:58278 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYFoe-0003QK-TJ for geb-bug-gnu-emacs@m.gmane.org; Tue, 23 Feb 2016 11:28:00 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37597) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYFlq-0007df-LM for bug-gnu-emacs@gnu.org; Tue, 23 Feb 2016 11:25:09 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aYFlm-0008A4-UG for bug-gnu-emacs@gnu.org; Tue, 23 Feb 2016 11:25:06 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:44414) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYFlm-00089y-RT for bug-gnu-emacs@gnu.org; Tue, 23 Feb 2016 11:25:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aYFlm-0003Ci-Cj; Tue, 23 Feb 2016 11:25:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org, bugs@gnus.org Resent-Date: Tue, 23 Feb 2016 16:25: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: Original-Received: via spool by 18522-submit@debbugs.gnu.org id=B18522.145624465912264 (code B ref 18522); Tue, 23 Feb 2016 16:25:02 +0000 Original-Received: (at 18522) by debbugs.gnu.org; 23 Feb 2016 16:24:19 +0000 Original-Received: from localhost ([127.0.0.1]:41540 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aYFl5-0003Bk-Kw for submit@debbugs.gnu.org; Tue, 23 Feb 2016 11:24:19 -0500 Original-Received: from eggs.gnu.org ([208.118.235.92]:46273) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aYFl3-0003BV-Au for 18522@debbugs.gnu.org; Tue, 23 Feb 2016 11:24:18 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aYFku-0007yI-HT for 18522@debbugs.gnu.org; Tue, 23 Feb 2016 11:24:12 -0500 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:43313) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aYFku-0007yD-EY; Tue, 23 Feb 2016 11:24:08 -0500 Original-Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2528 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1aYFkn-0003UI-VH; Tue, 23 Feb 2016 11:24:07 -0500 In-reply-to: <87mvqru119.fsf@roche-blanche.net> (message from Peter =?UTF-8?Q?M=C3=BCnster?= on Tue, 23 Feb 2016 12:19:30 +0100) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.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:113593 Archived-At: > From: Peter Münster > Cc: rudalics@gmx.at, larsi@gnus.org, 18522@debbugs.gnu.org > Date: Tue, 23 Feb 2016 12:19:30 +0100 > > On Mon, Feb 22 2016, Eli Zaretskii wrote: > > > So now the question becomes: which part of Fset_default? I thought it > > was the loop over all the buffers, but your session seems to say it > > couldn't be. > > Why? Because your session has very few buffers, and yet you see a much more massive slowdown. > This is what I read in buffer.h: > > --8<---------------cut here---------------start------------->8--- > /* Chain of all buffers, including killed ones. */ > > extern struct buffer *all_buffers; > > /* Used to iterate over the chain above. */ > > #define FOR_EACH_BUFFER(b) \ > for ((b) = all_buffers; (b); (b) = (b)->next) > --8<---------------cut here---------------end--------------->8--- > > "including killed ones" ! You interpret that comment too literally: it means killed buffers that were not yet GC'ed. You will see in alloc.c that sweep_buffers removes killed buffers from all_buffers and recycles their memory. > That means, the chain gets bigger and bigger, whenever I read an article > or I reply or I send a new message or whatever. If Emacs did that, it would have been a very serious bug and a huge memory sink.