Hi all,

    I currently have a topology which is designed to execute each component in 
its own pool of workers. This is to say, that if topology has three components 
A, B and C, all the tasks from A will execute in worker 1, and B in worker 2 
and C in worker 3. The worker will exclusively execute tasks from a single 
component.

    In this scenario, I want to measure the capacity of the component. If a 
certain amount of cpu is dedicated to the Worker (by cgroups), what is the 
maximum number of tuples that can be processed by that Worker. (Backpressure is 
disabled in this case)

    My current approach is to calculate the capacity using the Storm metrics. 
Measuring the amount of tuples processed by the worker in a given amount of 
time, and the amount of cpu used will provide a rough estimate of the total 
capacity of the worker.

    The current method of measuring capacity does not use the cpu metrics, so I 
am not certain if this will provide a reliable approximation of its maximum 
capacity.

    The current metrics provides means to measure the number of tuples 
processed, emitted, transferred and average latency. I could not find any way 
to measure the cpu used by the worker during the given time. I would like to 
know if there is already a means to measure the cpu used? If so can you point 
me to the documentation or an example to do so.

    Ultimately I would like to provide the user with the live metrics of number 
of tuples processed, transferred, average latency (very much like in storm-ui), 
and additionally add cpu usage and capacity. Any help in aiding me towards this 
goal is greatly appreciated.

Thanks for your time,

warm regards,
ravi

Reply via email to