<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
CDS stores a non-relocatable permgen image, so in order to use it,
the<br>
jvm must be able to load it at the same address it occupied when it
was<br>
generated. If I remember correctly, serial and CMS/Parnew/G1 put
the<br>
permgen above the old/young gens in the address space, while the<br>
parallel collectors put it below the old/young gens. There can be
issues<br>
with trying to map the permgen in the latter case, esp. on windows
where<br>
it's already a pain to find contiguous virtual address space for the
heap<br>
(dlls are loaded all over the place). I believe CDS more-or-less
works<br>
with CMS/Parnew/G1, but no one's had time to get all the bugs out.<br>
We'd welcome help. :)<br>
<br>
Paul<br>
<br>
On 4/14/11 5:14 AM, Krystal Mok wrote:
<blockquote
cite="mid:BANLkTimf_E2UNdHHew89JGbDYgRFKgSgzQ@mail.gmail.com"
type="cite">Hi all,
<div><br>
</div>
<div>I've had this doubt for quite a long time but was too shy to
ask on this list. Anyway, here I go:</div>
<div><br>
</div>
<div>According to the logic in
hotspot/src/share/vm/runtime/arguments.cpp, CDS doesn't work
with ParNew/CMS/PS/G1. That means only serial GCs works with
CDS.</div>
<div>I'd like to know, what are the conflicting points between CDS
and these parallel/concurrent GCs? Are there any plans to
resolve the conflicts, or are there any suggestions on how the
conflicts would be resolved?</div>
<meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
<div><br>
</div>
<div>Sincerely,</div>
<div>Kris Mok</div>
</blockquote>
</body>
</html>