uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Benjamin Sznajder <benj...@il.ibm.com>
Subject Re: Multi-threading with a CAS Multiplier.
Date Wed, 18 Jul 2007 08:08:49 GMT
Hi Eddie,

Thank you for your so rapid answer.

Indeed, my CASMultiplier is hidden in an Aggregated Engine  named AE1.
This AE1 contains
      - a CASMultiplier
      - a second AggregateEngine2 controlled by a FlowController composed
of different pipelines.
      - a CAS Merger
      - a CAS Consumer


The whole CPM is composed by a CollectionReader, and the AE1

If I define the AggregateEngine2 (i.e the AE that does not contain the
CASMultiplier) with multipleDeploymentAllowed=true, with each Analysis
Engine in it, defined also with multipleDeploymentAllowed=true (including
the FlowController)
And if, in addition, I set <casProcessors casPoolSize="5"
processingUnitThreadCount="3">

In such configuration, do I run in parallel on the pipelines contained in
AggregateEngine2?

Thanks
Benjamin.



                                                                           
             "Eddie Epstein"                                               
             <eaepstein@gmail.                                             
             com>                                                       To 
                                       uima-user@incubator.apache.org      
             17/07/2007 23:24                                           cc 
                                                                           
                                                                   Subject 
             Please respond to         Re: Multi-threading with a CAS      
             uima-user@incubat         Multiplier.                         
               or.apache.org                                               
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




Hi Benjamin,

The basic UIMA aggregate analysis engine is single threaded, resulting
in the behavior you describe. Multi-threading must be provided by a layer
above a UIMA analysis engine, for example, the CPM.

The parameter multipleDeploymentAllowed is used by the CPM;
when multiple parallel processing pipelines are specified, any components
with multipleDeploymentAllowed=false will not be replicated.

The CPM only supports a single type of Cas multiplier: the collection
reader.
The CPM does not understand Cas multipliers; such components can exist
within an aggregate AE but only the same Cas sent in to an AE from the CPM
can come out of the AE.

Eddie


On 7/17/07, Benjamin Sznajder <benjams@il.ibm.com> wrote:
>
> Hello,
>
> I built a CPE including a CAS Multiplier with two pipelines of AE:
>
> A CAS enters the CAS Multiplier and is splitted to two different CASes
> that, according to their type, are directed to one or the other pipeline.
> Currently, one CAS enters the CAS Multiplier, and then one CAS exits the
> CAS Mult and passes the whole relevant pipeline, before the second CAS
> Multiplier is outputted by the CAS Multiplier and psases the second
> pipeline.
>
> I would be interested by parallelism :
> I mean that I would like that when the first CAS outputted by the CAS
> Multiplier is passing through its relevant pipeline, the second CAS
passes
> in parallel by its second relevant pipeline.
>
> Is the section 3.7 in the Developper's guide the answer to my question?
> Is there any connection (if yes, which one?) with the parameter:
> multipleDeploymentAllowed
>
> Regards,
>
> Benjamin
>
>



Mime
View raw message