[ 
https://issues.apache.org/jira/browse/GEODE-3622?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16282366#comment-16282366
 ] 

Darrel Schneider commented on GEODE-3622:
-----------------------------------------

The previous checkin added a new implementation of eviction that addresses this 
issue in 1.4 but that new implementation is still experimental.
This ticket should only be resolved when the new implementation is no longer 
experimental.

In 1.4 eviction still defaults to the old implementation that can consume high 
amounts of CPU.
To use the new implementation do the following:  
"-Dgeode.EvictionScanAsync=true"


> The first HeapLRU evictions on large region can consume high amounts of CPU
> ---------------------------------------------------------------------------
>
>                 Key: GEODE-3622
>                 URL: https://issues.apache.org/jira/browse/GEODE-3622
>             Project: Geode
>          Issue Type: Improvement
>          Components: eviction
>            Reporter: Darrel Schneider
>            Assignee: Kirk Lund
>
> If you have a region configured for HeapLRU eviction and are able to put a 
> large number of entries in it before hitting the eviction threshold, then the 
> first evictions will consume much more CPU than subsequent evictions. The 
> reason for this is that the eviction list is not initialized until the first 
> eviction is done. At that time a scan is done of all the existing entries 
> marking each one as not having been recently used. This can touch a large 
> number of memory pages and also hits some common synchronization locks. You 
> can see that this is happening by looking at the HeapLRUStats.lruEvaluations 
> stat.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to