[rules-users] high cpu usage
techy
techluver007 at gmail.com
Wed Mar 25 16:23:39 EDT 2009
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 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 simple process will chew up CPU. If you don't believe
> me,
> create an app that adds .00001 in a loop until it reaches a billion.
> You'll
> see this process get all kinds of CPU, but will yield to other
> applications
> when it needs to.
>
> By this - "while I was doing this, Other apps contacted me about this and
> showed their
> concern too." I assume you mean people contacted you that saw the CPU was
> high? Did they have any indication their apps slowing down? Probably not.
>
> Solaris does a real nice job of managing system resources. I've freaked
> out
> our operations guys by running systems at 100% more than once. ;-) I had
> the boxes doing a lot of work, but not thrashing the CPU.
>
> Learn to use vmstat and monitor the run queue. Generally, if this is not
> getting over 1 or 2, you're fine.
>
>
> On Wed, Mar 25, 2009 at 7:16 AM, techy <techluver007 at gmail.com> wrote:
>
>>
>> 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%. occasional spikes went to 85-90%.
>> while I was doing this, Other apps contacted me about this and showed
>> their
>> concern too.
>>
>> So this brings up another question. Will drools high cpu usage degrade
>> other app performance when they are running in same machine & same time?
>>
>> Thanks again!
>>
>>
>> nheron wrote:
>> >
>> > 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 high very
>> > quicly but is is normal !
>> > All my customers have this surprise : a 4 CPU machine instead one one
>> > makes it able to have 4 concurrent drools sessions to work in parallele
>> > with the same performance as one session on one CPU !
>> > Regards
>> > Nicolas Heron
>> >
>> > Regards
>> > Nicolas
>> > Le mercredi 25 mars 2009 à 10:05 +0100, Wolfgang Laun a écrit :
>> >
>> >> 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 natural
>> >> upper limit.
>> >>
>> >> If the overall throughput is good, why do you worry?
>> >>
>> >> -W
>> >>
>> >>
>> >>
>> >> On Tue, Mar 24, 2009 at 11:20 PM, techy <techluver007 at gmail.com>
>> >> wrote:
>> >>
>> >>
>> >> Hello
>> >> My app is functioning consumer/producer model.
>> >> 1.Producer reads the data from DB and inserts to blocking
>> >> queue
>> >> 2.Consumer reads the data from queue and execute the rules
>> >> using drools
>> >> stateless session.
>> >> Both producer and consumer run asynchronously.
>> >>
>> >> in my testing I found the following
>> >>
>> >> 1. for 1000 facts at a time and no rules in drl, cpu usage is
>> >> maintained at
>> >> 25-30% in my PC(Intel core 2 CPU,2.13 GH,2G RAM) - with no
>> >> rules in drl, Is
>> >> this cpu usage acceptable?
>> >> 2. for 1000 facts at a time and ~60 rules in drl, cpu usage is
>> >> maintained at
>> >> 50-60% on the same PC.
>> >> 3. If I have 1 sec wait between each execution of rules in
>> >> consumer, then
>> >> cpu usage is maintained < 5%
>> >>
>> >> high CPU usage is being big concern to me. Is this expected
>> >> while using
>> >> drools? Do others see same cpu usage too? Please share your
>> >> thoughts.
>> >> appreciate your input.
>> >>
>> >> Thanks
>> >>
>> >> --
>> >> View this message in context:
>> >> http://www.nabble.com/high-cpu-usage-tp22691131p22691131.html
>> >> Sent from the drools - user mailing list archive at
>> >> Nabble.com.
>> >>
>> >> _______________________________________________
>> >> 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
>> >
>> > _______________________________________________
>> > rules-users mailing list
>> > rules-users at lists.jboss.org
>> > https://lists.jboss.org/mailman/listinfo/rules-users
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/high-cpu-usage-tp22691131p22699498.html
>> Sent from the drools - user mailing list archive at Nabble.com.
>>
>>
>> _______________________________________________
>> 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
>
>
--
View this message in context: http://www.nabble.com/high-cpu-usage-tp22691131p22710416.html
Sent from the drools - user mailing list archive at Nabble.com.
More information about the rules-users
mailing list