Hi

We noticed that UIMA AS does not scale with multiple threads as expected.

Digging further into the problem we noticed two places which are executed by at most one thread at a time:
- BaseUIMAAsynchronousEngineCommon_impl.sendCAS()
- BaseMessageSender.run()
We are using one UimaAsynchronousEngine per endpointName, thus serializing and sending a message will only be done one at a time, no matter how many instances of this analysisEngines we have running under this endpointName.

How can we improve on this?
Can we just pool the UimaAsynchronousEngines?
Can we do better than just calling UimaAsynchronousEngine.sendAndReceiveCAS()?

Sincerely,
Matthias

--
Matthias Koch

Averbis GmbH
Tennenbacher Str. 11
79106 Freiburg
Germany

Fon: +49 761 708 394 0
Fax: +49 761 708 394 10
Email: [email protected]
Web: https://averbis.com

Headquarters: Freiburg im Breisgau
Register Court: Amtsgericht Freiburg im Breisgau, HRB 701080
Managing Directors: Dr. med. Philipp Daumke, Dr. Kornél Markó

Reply via email to