[ 
https://issues.apache.org/jira/browse/OPENNLP-1816?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kristian Rickert updated OPENNLP-1816:
--------------------------------------
    Description: 
Heya - so I'm working on a PR to make OpenNLP ME objects thread-safe.  

I'll provide the benchmarks in a few moments - 
 # Old way — new ME instance per call (what module-chunker does today)
 # New way, instance-per-thread — one ME per thread, reused across calls
 # New way, shared single ME — one ME instance shared across all threads    

So this would mean you don't need to pool ME instances or worry about creating 
new ones every time.

So far my initial tests show a 1.67x speedup in processing times for the tests 
I'm doing.. I'll have a better benchmark and create the PR soon.

  was:
Heya - so I'm working on a PR to make OpenNLP ME objects thread-safe.  so t

I'll provide the benchmarks in a few moments - 
 # Old way — new ME instance per call (what module-chunker does today)
 # New way, instance-per-thread — one ME per thread, reused across calls
 # New way, shared single ME — one ME instance shared across all threads    

So this would mean you don't need to pool ME instances or worry about creating 
new ones every time.

So far my initial tests show a 1.67x speedup in processing times for the tests 
I'm doing.. I'll have a better benchmark and create the PR soon.


> Make the ME object design thread-safe and faster
> ------------------------------------------------
>
>                 Key: OPENNLP-1816
>                 URL: https://issues.apache.org/jira/browse/OPENNLP-1816
>             Project: OpenNLP
>          Issue Type: Improvement
>    Affects Versions: 3.0.0-M1
>            Reporter: Kristian Rickert
>            Priority: Major
>
> Heya - so I'm working on a PR to make OpenNLP ME objects thread-safe.  
> I'll provide the benchmarks in a few moments - 
>  # Old way — new ME instance per call (what module-chunker does today)
>  # New way, instance-per-thread — one ME per thread, reused across calls
>  # New way, shared single ME — one ME instance shared across all threads    
> So this would mean you don't need to pool ME instances or worry about 
> creating new ones every time.
> So far my initial tests show a 1.67x speedup in processing times for the 
> tests I'm doing.. I'll have a better benchmark and create the PR soon.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to