Re: Bitwise sweeping

Jon Harrop <[email protected]> Tue, 11 Jan 2011 09:43:44 +0000
Newsgroups gmane.comp.programming.garbage-collection.general
Message-ID <[email protected]>
I don't understand why/when that cache line would get pounded?

Cheers,
Jon.

-----Original Message-----
From: [email protected] [mailto:[email protected]] On B=
ehalf Of Dave Mason
Sent: 10 January 2011 19:14
To: [email protected]
Subject: Re: [gclist] Bitwise sweeping


On Jan 9, 2011, at 19:30, Jon Harrop wrote:

> The first cache line in the region
> stores 512 allocated bits (=3D 1 cache line) that indicate which of the 5=
12
> blocks in the remainder of the region have been allocated. The second cac=
he
> line contains a similar bitvector for mark bits that are zero

It would require testing, but it might be better to only use 1/2 of a cache=
 line, so that sweep operations only load one line.  As Hans indicated, tha=
t cache line is going to get hit on a lot depending on your region size... =
e.g. if it's the same size as your L1 cache, it will get pounded.

../Dave

Trayport Limited
Registered in England at 4th Floor Rose Court, 2 Southwark Bridge Road, Lon=
don SE1 9HS
Company registration no.2769279.