Thanks Arjun.
"you may be using the same object in all your rules; so the theoretical
ReteOO performance goes for a toss coz it does branch the tree based on
object type." it is interesting to know this point. I didn't know that also
affects performance.
Yes. I use same object in most of the rules
Thank you very much everyone for feedback.
I did kind of dry run in prod server with 10 parallel threads today each
with 2000 facts. CPU usage varied from 60% to 99%.
Thompson,
as per your suggestion, I also monitored the run queue whose value varied
from 4 to 14.
John A Thompson wrote:
>
> I w
I would not worry about this, especially on solaris.
You're first test was invalid. You ran on an idle system. The OS is going
to give the Java process whatever amount of the CPU it needs to complete its
work. On an idle system, there is nothing competing for the CPU. In this
scenario, a very
I would not worry about this, especially on solaris.
You're first test was invalid. You ran on an idle system. The OS is going
to give the Java process whatever amount of the CPU it needs to complete its
work. On an idle system, there is nothing competing for the CPU. In this
scenario, a very
Wolfgang is providing very sensible comments.
On top of that, it is always good to remember that the Rete algorithm is
optimized for the processing of high volumes of rules and the overall
performance is not tied to the number of existing rules, but the average
number of matching rules.
In fact, what I did on a project with drools, I limit the number of
threads running drools.
You can do this by using a java semaphore set up to 3 so that the
fourth thread must wait for one to release its semaphore.
In your case, limit the number of drools thread to 3, so the CPU will
stay at 40%.
Many hounds soon catch the hare. :-)
You are not nice (hint, hint!) to other users if you monopolize the
resources that are
up for grabs. That's neither a problem of rules in general, nor that of
Drools in
particular. Launching many threads doing your stuff in parallel will make
you reach the end
g] On Behalf Of techy
Sent: 25 March 2009 11:17
To: rules-users@lists.jboss.org
Subject: Re: [rules-users] high cpu usage
Thanks for your valuable input.
I did further testing in TEST solaris machine where other apps too are
running.
1.In the consumer, I launched 5-10 threads of parallel execution
Thanks for your valuable input.
I did further testing in TEST solaris machine where other apps too are
running.
1.In the consumer, I launched 5-10 threads of parallel execution with drools
stateless session. It did performed well with more cpu usage. it maintained
avg cpu usage of 65-70%. occas
Hello,
Yes, when running drools, the cpu usages goes high.
It is one of the main caracteristic with rule engine : the more cpu you
have the quickler it is !!
It is normal because all the rete graph & Co are in ram and drools work
on it.
So there is not wait for database, IO and co so CPU goes very
The figures you gave just indicate that you have a good balance between I/O
and CPU load. The increase between "no rules" and "~60 rules" is to be
expected
as all the work is being done during fact insertion. Of course, adding more
and
more rules will, eventually, push the CPU load factor to the na
for batch of execution(i.e 1000 facts), I create stateless session in
consumer and execute as given below.
this.ruleBase.newStatelessSession().execute(facts);
techy wrote:
>
> Hello
> My app is functioning consumer/producer model.
> 1.Producer reads the data from DB and inserts to blocking q
12 matches
Mail list logo