I also observed that we do need more CPU power since 2.x versions. Try
increasing the supervisor CPU and its service memory/RAM. Since you are
giving 20Gb XmX for workers, we need supervisors to be in a much beefier
state to provide that heap. We are a streaming app and for us, the
supervisor CPU utilization can go close to 16 CPU cores+.

On Mon, Aug 28, 2023 at 5:13 PM v.s kadu <virajkadu...@gmail.com> wrote:

> Hi All,
> I have figured out a way to deal with this.
> Just need to increase the parallelism hint of the component which is
> taking longer to process or it's Capacity is near to one in storm ui. This
> helped me to generate files faster.
>
> However another question which I have is regarding CPU utilization.
> I have executed my topologies with storm 0.9.6 and 2.4.0.
> Storm 0.9.6 uses ~30 % of 16 core RHEL  8 server to process.
> However storm 2.4.0 uses ~65% to process the same .
> The difference is huge.
> Please note we are emitting 1000 records from Spout and this is coded in
> java.
> Storm configurations used in both versions
>
> topology.max.spout.pending:200
> topology.message.timeout.secs:300
> storm.messaging transport:"backtype.storm.messaging.netty.Context"
> nimbus.task.timeout.secs:240
> nimbus.thrift.max_buffer_size:20480000
> nimbus.childopts:"-Xmx2048m -Djava.net.preferIPv4Stack=true"
>
> worker. childopts:"-Xmx20g -XX:+UseG1GC -Djava.net.preferIPv4Stack=true"
>
> supervisor.childopts:"-Xmx2048m -Djava.net.preferIPv4Stack=true"
>
> How we could trace why storm 2.4.0 is taking such high CPU utilization?
> Any configuration changes needed for storm 2.4.0 while migrating from
> 0.9.6?
>
>
>
> Regards,
> Viraj Kadu
>
> On Thu, 24 Aug, 2023, 1:49 am v.s kadu, <virajkadu...@gmail.com> wrote:
>
>> Hello Team,
>>
>> I am migrating to apache storm 2.4.0 from apache storm 0.9.6 But the
>> performance in apache storm 2.4.0 is slower.
>>
>> I read that wait strategy plays role in performance Exiting application
>> on apache storm 0.9.6 has following wait strategy configuration
>>
>> topology.spout.wait.strategy: backtype.storm.spout.SleepWaitStrategy
>> topology.disruptor.wait.strategy: com.lmax.disruptor.BlockingWaitStrategy
>> topology.disruptor.wait.timeout.millis: 1000
>> topology.sleep.spout.wait.strategy.time.ms: 1
>>
>> Tried tweaking wait strategy parameter in apache storm 2.4.0. Following
>> tests i had performed
>> 1.
>> Kept all defaults as it is
>>
>> 2.
>> topology.bolt.wait.progressive.level1.count:0
>> topology.bolt.wait.progressive.level2.count:0
>> topology.bolt.wait.progressive.level3.sleep.millis:0
>> topology.backpressure.wait.progressive.level1.count:0
>> topology.backpressure.wait.progressive.level2.count:0
>> topology.backpressure.wait.progressive.level3.sleep.millis:0
>>
>> 3.
>> topology.spout.wait.strategy:org.apache.storm.policy.WaitStrategy
>> topology.backpressure.wait.strategy:org.apache.storm.policy.WaitStrategy
>> topology.bolt.wait.strategy:org.apache.storm.policy.WaitStrategy
>> topology.bolt.wait.microsec:0
>>
>> But performance was lot slower in all scenarios. What other factors we
>> can check for performance testing while migrating? How to improve
>> performance in apache storm 2.4.0?
>>
>> Regards,
>> Viraj Kadu
>>
>

Reply via email to