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

Adrien Grand commented on LUCENE-7778:
--------------------------------------

The fact that {{MMapDirectory}} performs worse than {{RAMDirectory}} is a bit 
counter-intuitive to me, what does your workload look like? Your last comment 
suggests that you run queries on tiny indexes that contain 10 to 200 documents, 
is it correct? This looks like a use-case that {{MemoryIndex}} has been 
designed for?

> Remove synchronized from high-contention methods on RAMFile
> -----------------------------------------------------------
>
>                 Key: LUCENE-7778
>                 URL: https://issues.apache.org/jira/browse/LUCENE-7778
>             Project: Lucene - Core
>          Issue Type: Improvement
>          Components: core/store
>            Reporter: Steve Mason
>            Priority: Minor
>
> When benchmarking RAMDirectory access via multiple threads the methods 
> {{RAMFile::numBuffers}} and {{RAMFile::getBuffer}} show up blocking threads 
> fairly frequently
> By removing the {{synchronized}} keyword from these methods our internal 
> benchmarks show a 2x performance increase under concurrent load.
> I don't think removing {{synchronized}} from these methods is a problem as 
> they are read-only and write access to these fields is not synchronized.  
> LUCENE-2779 also implies that some ofthe locking on RAMDirectory is not 
> necessary



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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

Reply via email to