From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: poffice@blade.nagaokaut.ac.jp Delivered-To: poffice@blade.nagaokaut.ac.jp Received: from kankan.nagaokaut.ac.jp (kankan.nagaokaut.ac.jp [133.44.2.24]) by blade.nagaokaut.ac.jp (Postfix) with ESMTP id 144E51F0378 for ; Sat, 15 Mar 2008 00:01:57 +0900 (JST) Received: from funfun.nagaokaut.ac.jp (funfun.nagaokaut.ac.jp [133.44.2.201]) by kankan.nagaokaut.ac.jp (Postfix) with ESMTP id 629B9F444 for ; Sat, 15 Mar 2008 00:00:23 +0900 (JST) Received: from localhost (localhost.nagaokaut.ac.jp [127.0.0.1]) by funfun.nagaokaut.ac.jp (Postfix) with ESMTP id 8BA548FC2B for ; Sat, 15 Mar 2008 00:00:28 +0900 (JST) X-Virus-Scanned: amavisd-new at funfun.nagaokaut.ac.jp Received: from funfun.nagaokaut.ac.jp ([127.0.0.1]) by localhost (funfun.nagaokaut.ac.jp [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9UkIaJLiVth6 for ; Sat, 15 Mar 2008 00:00:28 +0900 (JST) Received: from voscc.nagaokaut.ac.jp (voscc.nagaokaut.ac.jp [133.44.1.100]) by funfun.nagaokaut.ac.jp (Postfix) with ESMTP id 50AA68FC1F for ; Sat, 15 Mar 2008 00:00:28 +0900 (JST) Received: from carbon.ruby-lang.org (carbon.ruby-lang.org [221.186.184.68]) by voscc.nagaokaut.ac.jp (Postfix) with ESMTP id 31D22630036 for ; Sat, 15 Mar 2008 00:00:26 +0900 (JST) Received: from beryllium.ruby-lang.org (beryllium.ruby-lang.org [127.0.0.1]) by carbon.ruby-lang.org (Postfix) with ESMTP id 54A143C229412; Sat, 15 Mar 2008 00:00:12 +0900 (JST) Received: from nf-out-0910.google.com (nf-out-0910.google.com [64.233.182.191]) by carbon.ruby-lang.org (Postfix) with ESMTP id D63E73C229417 for ; Sat, 15 Mar 2008 00:00:04 +0900 (JST) Received: by nf-out-0910.google.com with SMTP id 4so1506638nfv.17 for ; Fri, 14 Mar 2008 08:00:14 -0700 (PDT) Received: by 10.78.141.12 with SMTP id o12mr30531965hud.22.1205506812559; Fri, 14 Mar 2008 08:00:12 -0700 (PDT) Received: by 10.78.83.3 with HTTP; Fri, 14 Mar 2008 08:00:12 -0700 (PDT) Delivered-To: ruby-core@ruby-lang.org Date: Sat, 15 Mar 2008 00:00:05 +0900 Posted: Fri, 14 Mar 2008 09:00:12 -0600 From: "Daniel Berger" Reply-To: ruby-core@ruby-lang.org Subject: Re: Copy-on-write friendly garbage collector To: ruby-core@ruby-lang.org Message-Id: <6037b70c0803140800r547c7cc2l8a6c003fc93dbb20@mail.gmail.com> In-Reply-To: <47DA6092.20203@plan99.net> References: <47D2255C.2010205@dan42.com> <47D9EF0B.4030203@plan99.net> <47DA02AF.3050706@dan42.com> <47DA6092.20203@plan99.net> X-ML-Name: ruby-core X-Mail-Count: 15900 X-MLServer: fml [fml 4.0.3 release (20011202/4.0.3)]; post only (only members can post) X-ML-Info: If you have a question, send e-mail with the body "help" (without quotes) to the address ruby-core-ctl@ruby-lang.org; help= X-Spam-Checker-Version: SpamAssassin 3.1.7 (2006-10-05) on carbon.ruby-lang.org X-Spam-Level: X-Spam-Status: No, score=-4.1 required=7.0 tests=ARIN,AWL,BAYES_00, CONTENT_TYPE_PRESENT,QENCPTR2 autolearn=disabled version=3.1.7 X-Original-To: ruby-core@ruby-lang.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=KZx4ZPj6q/EZj7gvmpa8wY45CTdNUQIBBqKjw2HsyTk=; b=BQL6+JuE/St9h/QFSQxV2kyR1M2ACHYii/RbrD+Ph95k3y4FC23jtR447hdgecwxM8eZYZHuLy3wJTZA98QgTJiUEdpy5ff/yzsa6H97Dv1b+KJFbrPJdm/cPGXFFe3907tYG0KgtyD/1wlmS1KIlmdxidJwOD+HKLJZW70YX7Y= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=QeKemX+suv79SudpOm0YiGQtxRaLlks32xykmAY9zBLTTMlQVKAplSITd/MwTOCvMuqN8LwCtW24A+Ew7QkJXuVAS5isdJeWQyqvhKm/CHZOR/i/D1TiVRTSWsAmQcgU1aRf+0Ims27wCwl0164QsLVvxfs74eMpHKC8DE/lxhI= Content-Disposition: inline Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Precedence: bulk List-Id: ruby-core.ruby-lang.org List-Software: fml [fml 4.0.3 release (20011202/4.0.3)] List-Post: List-Owner: List-Help: List-Unsubscribe: On Fri, Mar 14, 2008 at 5:25 AM, Hongli Lai wrote: > Daniel DeLorme wrote: > > So the GC method could be dynamically changed to cow-friendly just > > before doing a Process.fork... very nice! > > Actually, I'm thinking about requiring the script call "GC.cow_friendly > = true". Most scripts do not fork, and when they do, they usually don't > use it as a means to save memory. I recommend against this. Most people are simply not going to know when they should invoke it and when they shouldn't. It's an implementation detail that should be hidden from the user IMHO. Besides, it really worth splitting it out like this over a 5% speed hit? Or am I missing some other implementation detail? Regards, Dan