[ 
https://issues.apache.org/jira/browse/LUCENE-1574?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12985150#action_12985150
 ] 

Jason Rutherglen commented on LUCENE-1574:
------------------------------------------

ThreadPoolExecutor can act as a guide, it's main parameters are corePoolSize, 
maximumPoolSize, keepAliveTime.  

In regards to using System.arraycopy for the RT parallel arrays, if they grow 
to become too large, then SC could become a predominant cost.  However if the 
default thread states is 8, which'd mean that many DWPTs, the arrays would 
probably never grow to be too large for their SC to become noticeably 
expensive, hopefully.

> PooledSegmentReader, pools SegmentReader underlying byte arrays
> ---------------------------------------------------------------
>
>                 Key: LUCENE-1574
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1574
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: contrib/*
>    Affects Versions: 2.4.1
>            Reporter: Jason Rutherglen
>            Priority: Minor
>             Fix For: 4.0
>
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> PooledSegmentReader pools the underlying byte arrays of deleted docs and 
> norms for realtime search.  It is designed for use with IndexReader.clone 
> which can create many copies of byte arrays, which are of the same length for 
> a given segment.  When pooled they can be reused which could save on memory.  
> Do we want to benchmark the memory usage comparison of PooledSegmentReader vs 
> GC?  Many times GC is enough for these smaller objects.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to