Christian Catchpole wrote:
> I always thought it weird that java was originally targetted for
> embedded.  These don't typically use compacting collectors - combine
> this with limited memory and you are asking for fragmentation and out
> of memory conditions based on the dyamics of the runtime conditions.
> Nothing you can properly test for.
> Even you seem to have enough avail ram.
>   
This has been a problem with older IBM technology, say 1.4.2 and you 
will get fragmentation issues that are hard to test for and will cause 
the JVM  to fail on alloction even the standard IBM collections do 
compact. This, however, has not been a problem typically found in other 
JVM implentations. It is a problem of *how* IBM was compacting.

That said, CMS does not compact unless it is unable to recover a certain 
threshold of heap space. This is known as CMS failure. The compaction 
will solve the fragmentation issue and since there aren't any (that I 
know of) pinned objects (unmovable in IBMs heap implementation), you 
will only run out of heap in expected ways. However, compaction isn't 
cheap as one of the dominate cost in any GC is copying data. Also, 
compaction can't be concurrent as this will lead to race conditions 
between the app and the collector. The race conditions are solvable 
concurrently but performance will suffer because of it. It's currently 
cheaper to pause application threads. That balance is changing in G1.

Regards,
Kirk
> On Jan 2, 7:14 am, kirk <kirk.pepperd...@gmail.com> wrote:
>   
>>> NIO virtual memory mapped is outside of the VM memory.
>>>       
>> Do you mean Java heap?  'cos, mmapeed memory is part of the process
>> space though not Java heap if that is what you meant.
>>
>> Regards,
>> Kirk
>>     
> >
>
>   


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to javaposse@googlegroups.com
To unsubscribe from this group, send email to 
javaposse+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to