>  Why it is not possible with on heap ? 
Well-known garbage collectors that are available in Oracle/Open/IBM JDKs works 
not to nice with heaps of size > 20 GB on high-performant applications like the 
ones that are built on top of Ignite. The reason is that stop-the-world pauses 
can become lengthy measuring in tens or hundreds of seconds. Go though this 
discussion to get more details [1].

The only known garbage collector that can keep up with the heaps of hundreds of 
gygabates and that avoids stop-the-world pauses is Zing from Azul. [2]

Since you need to pay to Azul if you want to use its JVM the only possible way 
is to fall back to off-heap space in Ignite that will let to avoid lengthy GC 
pauses.

> Why off heap is faster than two others layers ?

It depends. Usually off-heap based solutions show comparable performance if 
properly tuned. However there can be minor performance degradation in high 
performant degradation since objects have to be moved from off-heap to on-heap 
when you need them (cache.get/results sets of SQL query/etc.). But as a benefit 
you won’t have long gc pauses.

[1] http://stackoverflow.com/questions/214362/java-very-large-heap-sizes 
<http://stackoverflow.com/questions/214362/java-very-large-heap-sizes>
[2] http://www.infoq.com/presentations/Understanding-Java-Garbage-Collection 
<http://www.infoq.com/presentations/Understanding-Java-Garbage-Collection>

—
Denis

> On May 11, 2016, at 7:59 PM, tomk <rrrtomtom...@gmail.com> wrote:
> 
> Thanks for your answer, nevertheless I still don't understand.  
> I know that nodes in ignite are launched in jvm.  
> It seems to me that off heap make it possible to cache large dataset (such
> large as RAM).  Why it is not possible with on heap ? 
> 
> Why off heap is faster than two others layers ?
> 
> 
> 
> --
> View this message in context: 
> http://apache-ignite-users.70518.x6.nabble.com/Off-Heap-Memory-simpler-explanation-than-in-docs-tp4790p4877.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Reply via email to