[rules-users] determinism with rulebase partitioning

Mark Proctor mproctor at codehaus.org
Fri Aug 1 13:24:48 EDT 2008


Sorry I meant to ask this on th dev list :(
Anstis, Michael (M.) wrote:
> Hi Mark,
>
> A few questions:-
>
> (A) What does "parallel evaluation of a rulebase" mean? Is it designed
> to optimise, for example, two threads processing a stateless and
> stateful session?
>   
It works out the parts of the network that can be isolated, so we can 
use multiple threads in parallel for evalation of a rulebase.
> (B) Are there only two partitions, both of which are invisible to the
> user? Is there any value in allowing user-defined partitions?
>   
There could be any number of partitions depending on the analysis of the 
rulebase. It's an internal optimisation of a rulebase, so it's not 
something they are aware of. A user cannot define a partition, as 
partitions are determined by the rules written and their level of isolation.
> (C) Does the partition used depend upon what type of session is used
> (i.e. stateless always uses the partition without an agenda whereas
> stateful always uses the partition with an agenda)?
>   
it analysesthe rulebase, nothing to do with the session type. However 
stateless sessions without inference typically don't need determinstic 
execution, so we can just evaluate and fire there.
> (D) Can a rule sometimes be deterministic and sometimes not (i.e.
> depends upon the type of session)?
>   
Not on the type of session, no. And having a rule sometimes determinstic 
would probably be bad.
> Cheers,
>
> Mike
>
> -----Original Message-----
> From: rules-users-bounces at lists.jboss.org
> [mailto:rules-users-bounces at lists.jboss.org] On Behalf Of Mark Proctor
> Sent: 01 August 2008 07:05
> To: Rules Users List
> Subject: [rules-users] determinism with rulebase partitioning
>
> We have rulebase partitioning almost working, this allows parallel 
> evaluation of a rulebase. For stateless lessions with no agenda this 
> will allow for much faster executions, where you don't care about 
> deterministic execution. However for deterministic execution its more 
> complicated. The current plan is to have an agenda per parition, which 
> means that we no longer have rulebase wide deterministic execution 
> order, only with the partition itself. The user is unlikely to be aware 
> of the created partitions, so won't be aware of the unditermistic 
> behavour of their rulebase. Anyone have any input on mechanisms users 
> can do to help the rulebase know what needs to be executed 
> deterministically and what doesn't?
>
> Mark
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>   




More information about the rules-users mailing list