Looks like the attachments were stripped off. So resending with links to profiler screenshots.
Call tree: https://github.com/roshannaik/storm-benchmark-sol/blob/master/profiler/storm%20core%20-%20sol%20-%200%20acker/storm%20core%20-%20call%20tree.png Method stats: https://github.com/roshannaik/storm-benchmark-sol/blob/master/profiler/storm%20core%20-%20sol%20-%200%20acker/storm%20core%20-%20method%20stats.png -roshan From: Roshan Naik <ros...@hortonworks.com<mailto:ros...@hortonworks.com>> Reply-To: "dev@storm.apache.org<mailto:dev@storm.apache.org>" <dev@storm.apache.org<mailto:dev@storm.apache.org>> Date: Monday, February 1, 2016 at 6:38 PM To: "dev@storm.apache.org<mailto:dev@storm.apache.org>" <dev@storm.apache.org<mailto:dev@storm.apache.org>> Subject: Performance Profiling - Storm core Attached is a screenshots of the performance profile for Storm core using a Speed of Light topology. Topology info: - 1 bolt instance, 1 spout instance, 1 worker. - ACKer count = 0 - Spout generates precomputes a random list of tuples, then keeps emitting them endlessly - Bolt just remits the same tuple and lacks - localOrShuffleGrouping - Topology Code : https://github.com/roshannaik/storm-benchmark-sol/blob/master/src/main/java/storm/benchmark/benchmarks/SOL.java Observations: * Call tree info shows that a big part of the nextTuple() invocation is consumed in the Collector.emit() call. A major part of that goes in Reflection by the clojure code * Method Stats view shows that a lot of time is spent blocking on the disruptor queue