From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: MPS: User GC customizations Date: Thu, 04 Jul 2024 21:03:46 +0300 Message-ID: <867ce18265.fsf@gnu.org> References: <87v81pbgzi.fsf@localhost> <87y16khvhy.fsf@localhost> <87frspqwhr.fsf@localhost> <87tth5pdqc.fsf@localhost> <86sewp8djd.fsf@gnu.org> <86frsp88fa.fsf@gnu.org> <86bk3d87od.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="1596"; mail-complaints-to="usenet@ciao.gmane.io" Cc: pipcet@protonmail.com, yantar92@posteo.net, emacs-devel@gnu.org, eller.helmut@gmail.com To: Gerd =?utf-8?Q?M=C3=B6llmann?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Jul 04 20:04:31 2024 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 1sPQoo-00006L-Qu for ged-emacs-devel@m.gmane-mx.org; Thu, 04 Jul 2024 20:04:30 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sPQoC-0005Bc-TP; Thu, 04 Jul 2024 14:03:52 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sPQoB-0005An-DM for emacs-devel@gnu.org; Thu, 04 Jul 2024 14:03:51 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sPQoA-0007vU-J0; Thu, 04 Jul 2024 14:03:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=SmtUASVNBuLf7GrwdaVH/zrYVD8i23QO1aerdhmaq5Q=; b=cZ/6Mg6207IJzdIKMZE+ q/SLo3az6dmLjpjt+8A1SwqIiJW79PlSODDH+VwTdrIPaD9fs20kEv7rKvw0+zH6lTB+SBuQ4Ddvs IdNLe6utW0DsYVQb53C6j9o1DlP3BI5f9FZ9ifrc7kAI2pgRRuAzsr/f4upH15G4OjYYV6Vt12PZD fjPvBjpMAfIQ30DLSy0UvYRlWX1B06mv/IT/dTs6P0z1X7nEqp2+6uOCDxFx/qwfUszL4vkcg1QnX E2jXXjo3KZau+KjyPt12zCyalh1oSE8yc69KzuPDI+BpuUEKuER/KPrdkyRFy4WaGffOKycQm8Pod di1w22yNEwXLUw==; In-Reply-To: (message from Gerd =?utf-8?Q?M=C3=B6llmann?= on Thu, 04 Jul 2024 19:01:35 +0200) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 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-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:321348 Archived-At: > From: Gerd Möllmann > Cc: Pip Cet , yantar92@posteo.net, > emacs-devel@gnu.org, eller.helmut@gmail.com > Date: Thu, 04 Jul 2024 19:01:35 +0200 > > Eli Zaretskii writes: > > >> From: Pip Cet > >> I'm really confused. Can you explain what you think the difference > >> is? > > FWIW, I'm also confused. > > > I just did, twice. If that still doesn't explain it, then I guess my > > explanatory talents betray me, and I don't know what else to say. > > > >> The variable's value is a number. If the variable is zero, we don't > >> tell MPS we're idle when we're idle. If it's nonzero, we tell it > >> we're idle (when we are), and how much time it's okay to spend in GC. > > > > The number can only tell one thing, not two. AFAIU, it tells the > > latter: "how much time it's okay to spend in GC" once GC started due > > to idleness (and not some other reason). Gerd said something > > different: that this number "gives MPS notice" that Emacs is idle. > > (How can a number "give notice" I don't understand even in principle.) > > By saying that 0 has a special meaning. > > The "once GC started due to idleness" confuses me. We don't "start" GC > due to idleness. I didn't say "we" start GC due to idleness, I said that GC starts due to idleness. Not necessarily by ourself. > We allow MPS to do something concurrently, say one or more > increments in the sense of its incremental GC algorithm. And "GC > runs" all the time. You are saying that the whether Emacs is or isn't idle is not relevant at all to the effect of this variable? Then why does MPS documentation talk about "allowing the client program to make use of idle time to do some garbage collection"? And why does the doc string of igc-step-interval itself mention "GC when Emacs is idle"? IOW, let me turn the table and ask what does "idleness" have to do with this variable?