I am not certain, but perhaps you are running into a similar bug reported
and fixed recently under

https://issues.apache.org/jira/browse/UIMA-2354

Maybe the UIMA AS primitive service suffers from a similar problem than the
UIMA AS aggregate as described in the JIRA. I will verify this soon.

Another possibility is that the producer (UIMA AS Aggregate) is just
sending enough work to keep a single thread busy in the remote. Do you have
a CM and large enough cas pool to keep the service busy? You can use
jConsole to check the service queue. Look at queue depth and dequeue counts
while the service is processing. When you colocate the consumer with the
rest of the pipeline perhaps the other components contribute to the higher
 CPU utilization.

Jerry C

On Wed, Feb 22, 2012 at 10:54 AM, Spico Florin <spicoflo...@gmail.com>wrote:

> Hello!
>   I have an UIMA pipeline that it is using the
> ParallelFlowController(PFC). In ths flow I'm declaring some delegates AE
> will run  in parallel and serial one(consumer) that that will consume the
> messages from the first one.
>  In the deployment descriptor the consumer is declared as a remote AE. I've
> set CASPoolSize of the AAE to 10 and the scaleout parameter to 10.
> Profiling the application threads,I've observed that from the 10 threads
> just one of them is very busy doing the job(running mode) and the others
> most of them time are in the wait mode. Therefore, the bunch of the threads
> are unused most of the time. Thus the process time is increasing and the
> hardware remains unused ( 5% from 2 quad core processors). If I set up the
> consumer to be in the same JVM like the other annotators then I have the
> desired behavior (my processors will be used at 70% and all of the threads
> from the pool will process the message). Can you please advice how to
> achieve the same behavior with the remote consumer  as having the consumer
> locally?
> I look forward for your answers and suggestions.
>
> Thank you.
>  Regards,
>  Florin
>
> PFC descriptor descriptor:
>
> <delegateAnalysisEngine key="OAnnotator">
>      <import location="ODesc.xml" />
>    </delegateAnalysisEngine>
>
>    <delegateAnalysisEngine key="GAnnotator">
>      <import location="GDesc.xml" />
>    </delegateAnalysisEngine>
>
>    <delegateAnalysisEngine key="RConsumer">
>      <import location="RConsumer.xml" />
>    </delegateAnalysisEngine>
>
> <nameValuePair>
>        <name>Flow</name>
>        <value>
>          <array>
>            <string>Tokenizer</string>
>            <string>OAnnotator,GAnnotator
>            </string>
>            <string>RConsumer</string>
>          </array>
>        </value>
>      </nameValuePair>
>

Reply via email to