Hello!

1. I'm not sure it will be immediately available on heap.
2. This sounds a more reasonable assumption.
3. I guess so, but the real issue here is that on-heap cache increases Full
GC times. At some point it will become infeasible.
4. Yes, it would counteract the change to off-heap model.

Regards,
-- 
Ilya Kasnacheev


сб, 6 июн. 2020 г. в 14:54, VincentCE <v...@cephei.com>:

> In our project we are currently using ignite 2.7.6 with native persistence
> disabled and java 11. At the moment we are not using the on-heap feature,
> i.e. all our data lives in off-heap. However in order to gain performance
> we
> are thinking about activating on-heap. While there are already quite many
> questions/answers on that topic in this forum we are still missing some
> points. I would like to use the following scenario for our questions: Say
> we
> have one ignite-server-instance living on a *kubernetes-pod of 32 GiB
> memory
> request/limit size* with the following "hypothetical" configuration:
>
> - JVM options exactly as described here
> https://apacheignite.readme.io/docs/jvm-and-system-tuning, i.e. in
>   particular *10 GB heap fixed*.
> - Off-heap is limited to 15 GiB by adjusting the default region with
> *initSize = maxSize = 15 GiB*.
>   No more data regions are defined.
>
> Before doing anything with our ignite-server-instance we *initially fill
> its
> off-heap with 10 GiB* of data and this will be the only data that it will
> receive.
>
> What happens when we set
>
> *org.apache.ignite.configuration.CacheConfiguration.setOnheapCacheEnabled(true)
> in each data configuration and for now use no eviction policies* in
> particular during loading these 10 GB of data?
>
> More precisely:
> 1. As it is emphasised several times in this forum the data will still be
> be
> loaded into off-heap. But will it immediately also be loaded into heap,
> i.e.
> during the loading procedure each data point gets replicated simultaneously
> to heap resulting in two copies of the same data one in off-heap and one on
> heap after the procedure is finished?
> 2. ... Or will a given data point only be replicated to heap when ever it
> is
> being used, i.e. during computations?
> 3. Lets furthermore assume that our overall configuration was stable before
> switching to on-heap. In order to guarantee that it will do so afterwards
> would we need to increase the heap size by roughly 10 GB to 20 GB and
> therefore also our pod size to roughly 42 GiB? That would imply that using
> on-heap always goes hand in hand with increasing memory resources.
> 4. Obviously in this example we did not define any eviction-policy to
> control the on-heap cache size. However this is indeed intended here
> because
> we would like each data point to be quickly available living also in heap.
> Is this a useful approach (i.e. replicating the whole off-heap also in
> heap)
> in order to reach the overall goal namely better performance? It feels like
> this approach would counteract the change to the off-heap model from ignite
> 2.x.x onwards in terms of GC impacts and so on. Is this correct?
>
> Please let me know if you need more detailed informations about the
> configurations/settings we use.
>
> Thanks in advance!
>
> Vincent
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>

Reply via email to