From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?utf-8?Q?Gerd_M=C3=B6llmann?= Newsgroups: gmane.emacs.devel Subject: Re: MPS: weak hash tables Date: Sun, 07 Jul 2024 20:15:34 +0200 Message-ID: References: <878qyeffjh.fsf@localhost> <8734olzlws.fsf@gmail.com> <867cdx32e3.fsf@gnu.org> <864j912t0s.fsf@gnu.org> <86zfqt1cxa.fsf@gnu.org> <86y16d1aik.fsf@gnu.org> <86tth119bs.fsf@gnu.org> <86jzhx148w.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="2510"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: pipcet@protonmail.com, eller.helmut@gmail.com, yantar92@posteo.net, emacs-devel@gnu.org To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun Jul 07 20:16:30 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 1sQWR3-0000UB-9t for ged-emacs-devel@m.gmane-mx.org; Sun, 07 Jul 2024 20:16:29 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sQWQQ-0003eM-44; Sun, 07 Jul 2024 14:15:50 -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 1sQWQG-0003dx-O1 for emacs-devel@gnu.org; Sun, 07 Jul 2024 14:15:40 -0400 Original-Received: from mail-ej1-x633.google.com ([2a00:1450:4864:20::633]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sQWQE-000176-Va; Sun, 07 Jul 2024 14:15:40 -0400 Original-Received: by mail-ej1-x633.google.com with SMTP id a640c23a62f3a-a77c2d89af8so329328966b.2; Sun, 07 Jul 2024 11:15:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720376137; x=1720980937; darn=gnu.org; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WR4a9x4PAnO6t8MMcr76w4rSYyIlcGaw97vqhGytrJ8=; b=XzlqjsNg1nEZ/MANse/nhRS9d3SHSQ2OLI5p8/B+H4O747A+AXtdAWvjEPgUDxoITg UycOhCyKdSXEJNjVvfw0UiZj/cXievEWDPgNfWw8DQ8GD5PKBfAMpISlzGHdAfLCODvq t0HLy/7WkmNAu0w+at0hNWpWXU4Abql2nJc4V21MwoHPSBs7p5vAcnBOS/nlLE05xqG/ lFjaGqgxwUrGRcMS65wmR7Y0MTJf9F9GdfZ8QPpOKzOIuXuP+wWa87wV02HY3KhXu2lB Rl2lmCcPA5Z1JDEGaDxTgEbTNT18UT72NsYp00sOju91x/HeMk/7xcTjK3FMVMxouANC 65mg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720376137; x=1720980937; h=content-transfer-encoding:mime-version:user-agent:message-id:date :references:in-reply-to:subject:cc:to:from:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=WR4a9x4PAnO6t8MMcr76w4rSYyIlcGaw97vqhGytrJ8=; b=KncNTpIm5IGlVzclfzUY4otoSso7XwCDo0mPk2Ip13Vf6O6yPnFjw0L2EAY2Wac7EW IixVmLLJ0y/emCu+bfrcMMYki9ykwiDS5kfdH+tylQozlQe+FBQgERuqw5sBo7nsHaOF 7oLAyW4i0lPc86uWdQ9yl+bCA55phpsgZkyBUZFAdYWYC7nve7CGUXeNmXVxNSnvYxIX I0Clz1YohQLwzUTDQYos09TZYkBOigus6GPQUrPwudsSi1HGFLi4/dYR2HOzU/1qBiF3 fDE/kotBuRGNowkVTLRPp1ebJj3U+lTbX8MaBKVlO8Gf8uULmBwUYuazgDHP695eBvGY Ii7w== X-Forwarded-Encrypted: i=1; AJvYcCXKEuGgEa/PCUJ2BRGlr/MQRUp3N1DVi4ZhZAmGh2npEeYtwg0AjbfskIw+oGkn2hAutqLFOyRPYAzhMW8bLin6domf X-Gm-Message-State: AOJu0YyCmHVY7agx/XlV4GJKyk2Oxa6keRrWy8RNhW4SrPjOOr7bTEaK yimp6aK13+HEPaFKeBbrubh/VdLJe40BX+/SP5HtlPRhuFpbP0SmSXQ/vw== X-Google-Smtp-Source: AGHT+IFU7edlBb6BeRdo1rAqIGqXNA7t8nE4jKBZJZj+cYrN7GIWVsV4tDirBhhi8yb1rPWqvdf2hw== X-Received: by 2002:a17:906:716:b0:a77:c364:c4f3 with SMTP id a640c23a62f3a-a77c36628c1mr521521066b.55.1720376136622; Sun, 07 Jul 2024 11:15:36 -0700 (PDT) Original-Received: from pro2.fritz.box (p4fe3a778.dip0.t-ipconnect.de. [79.227.167.120]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-a77ea919751sm112758666b.86.2024.07.07.11.15.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 07 Jul 2024 11:15:35 -0700 (PDT) In-Reply-To: <86jzhx148w.fsf@gnu.org> (Eli Zaretskii's message of "Sun, 07 Jul 2024 20:49:51 +0300") Received-SPF: pass client-ip=2a00:1450:4864:20::633; envelope-from=gerd.moellmann@gmail.com; helo=mail-ej1-x633.google.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action 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:321513 Archived-At: Eli Zaretskii writes: >> From: Gerd M=C3=B6llmann >> Cc: pipcet@protonmail.com, eller.helmut@gmail.com, yantar92@posteo.net, >> emacs-devel@gnu.org >> Date: Sun, 07 Jul 2024 19:08:45 +0200 >>=20 >> Eli Zaretskii writes: >>=20 >> > But does igc know that an interval is no longer needed? How does it >> > know that when sweep_intervals in the old GC needed to do that >> > explicitly in C? >>=20 >> It's kind of mark-sweep vs. copying collector algorithms. >>=20 >> The mark phase of mark-sweep marks all objects reachable from roots, >> then the sweep phase frees what's not marked. >>=20 >> A copying collector copies every object reachable from roots. At the >> end, what has not been copied is implicitly unreachable. >>=20 >> MPS is a copying collection, with some additional complications, like >> ambiguous references (-> mostly-copying), and incrementality (-> >> barriers), but the principle is still the same. > > I understand all that, but unchaining an interval involves the need to > modify the pointers of its adjacent nodes, and how can MPS do that > without understanding our data structures? Can you please show me what code you mean?=20