[aarch64-port-dev ] Issue with 64K page size for JDK7 on AArch64

Andrew Dinn adinn at redhat.com
Fri Nov 7 10:48:11 UTC 2014


On 07/11/14 10:31, Andrew Haley wrote:
> On 07/11/14 10:08, Andrew Dinn wrote:
>> Anyone have any comments or arguments in favour or against?
> 
> I don't know why the heap size has to be rounded up to be an integer
> multiple of the size of the card table.  But there may be logic in the
> collectors which assumes it is.
> 
> It might be that we can get away with allocating card tables which
> aren't a multiple of the page size, but I don't know how much code
> might break.  Shouldn't be any, but who knows?

I am just investigating that but I think the effect is limited to the
card table code and that it copes with it. I will report my findings.

> The pages are 64k in order to reduce page table walks for machines
> with large memory.  So, it is assumed that there will be plenty of
> memory on such systems: that's the whole idea.  If you want small
> footprint you will not configure your system with 64k pages.  Keep
> that in mind.

Pardon my ignorance but is os page size an OS boot time configuration
option? Or does it require a rebuild of the OS to change it?

> The right way to fix this problem is, I suspect, not to round down the
> size of a heap but to round it up to the next multiple of 32m, and
> thank God we no longer have to deal with the permgen.

Looking at the jdk8 code that is indeed what it does.

I am not sure rounding up on JDK7 will not also break existing
apps/tests bu I will check that too. Even if it does not break it will
mean that VMs tend to run with a larger footprint than requested should
they be run on an OS with a 64K page size. That's not necessarily a good
thing but we could probably live with it.

regards,


Andrew Dinn
-----------



More information about the aarch64-port-dev mailing list