Return-Path: Delivered-To: apmail-incubator-harmony-dev-archive@www.apache.org Received: (qmail 94086 invoked from network); 28 Aug 2006 11:26:35 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 28 Aug 2006 11:26:35 -0000 Received: (qmail 88419 invoked by uid 500); 28 Aug 2006 11:26:28 -0000 Delivered-To: apmail-incubator-harmony-dev-archive@incubator.apache.org Received: (qmail 88368 invoked by uid 500); 28 Aug 2006 11:26:28 -0000 Mailing-List: contact harmony-dev-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: harmony-dev@incubator.apache.org Delivered-To: mailing list harmony-dev@incubator.apache.org Received: (qmail 88357 invoked by uid 99); 28 Aug 2006 11:26:28 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Aug 2006 04:26:28 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: pass (asf.osuosl.org: local policy) Received: from [130.56.64.134] (HELO anumail8.anu.edu.au) (130.56.64.134) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 28 Aug 2006 04:26:27 -0700 Received: from smtphost.anu.edu.au (ds2.anu.edu.au [130.56.64.54]) by anumail8.anu.edu.au (8.13.6.20060614/8.13.6) with ESMTP id k7SBQ4r7024251 for ; Mon, 28 Aug 2006 21:26:04 +1000 (EST) (envelope-from robin.garner@anu.edu.au) Received: from sqmail.anu.edu.au (sqmail.anu.edu.au [150.203.2.99]) by smtphost.anu.edu.au (8.13.7/8.13.7) with ESMTP id k7SBQ3o2020645 for ; Mon, 28 Aug 2006 21:26:04 +1000 (EST) Received: from 220.236.173.70 (SquirrelMail authenticated user u3401953) by sqmail.anu.edu.au with HTTP; Mon, 28 Aug 2006 21:26:04 +1000 (EST) Message-ID: <4307.220.236.173.70.1156764364.squirrel@sqmail.anu.edu.au> In-Reply-To: <4dd1f3f00608241519q4d02b314l9b2106c648985cd4@mail.gmail.com> References: <4dd1f3f00608232050t20b790calf75810d81e6cabcc@mail.gmail.com> <44EDD7FC.6040200@Intel.com> <4dd1f3f00608241519q4d02b314l9b2106c648985cd4@mail.gmail.com> Date: Mon, 28 Aug 2006 21:26:04 +1000 (EST) Subject: Re: [DRLVM][VM] -- which header bits are available for GC mark and GC forwarding use? From: "Robin Garner" To: harmony-dev@incubator.apache.org User-Agent: SquirrelMail/1.4.4-xss MIME-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Priority: 3 (Normal) Importance: Normal X-PMX-Version: 5.2.0.264296, Antispam-Engine: 2.4.0.264935, Antispam-Data: 2006.8.28.41442 internal X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N > From talking to > the MMTk guys (Steve Blackburn) it seems MMTk wants to have one byte > of object header for private use. Its unclear to me if this will be a > performance problem for a product JVM. Yep. We found a nice mark-sweep implementation technique that greatly reduces the cost of sweeping if we have several mark bits available, but after 4 or so bits the advantage tails off, so there is room for compromise with the VM's need. On the other hand I'm currently looking at other ways we could speed up GC if there were a few extra header bits available, so the more bits available to GC, the better - and these will generally be tunable parameters that can be traded against the VM's other needs. > I think the hashCode can be > reduced to one bit plus the object's current address at first > HashCode() invocation. I'd put this hash bit in the GC byte. And > make the GC byte the lowest byte in the header word. The remaining > 3bytes could be used for fat/thin locks. In GenMS, where there is a copying nursery and a non-moving mature space, you could indeed get away with 1 bit for hashcode, with a different meeaning in each space. In a heap where objects could move more than once, I think you might still need 2 bits. cheers --------------------------------------------------------------------- Terms of use : http://incubator.apache.org/harmony/mailing.html To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org For additional commands, e-mail: harmony-dev-help@incubator.apache.org