Hello, I am trying to control my cluster's parallelism and I want to achieve the following: 1 worker per component, and 1 executioner per worker and 1 task per executioner. In order to achieve the former, I submit my components to the topology as follows: Config conf = new Config(); TopologyBuilder builder = new TopologyBuilder(); builder.setSpout("spout_1", new GreenSpout(), 1) .setNumTasks(1); builder.setBolt("bolt_1", new GreenBolt(), 1) .setNumTasks(1) .directGrouping("spout_1"); builder.setBolt("bolt_2", new RedBolt(), 1) .setNumTasks(1) .directGrouping("bolt_1"); builder.setBolt("bolt_3", new YellowBolt(), 1) .setNumTasks(1) .directGrouping("bolt_2"); conf.setDebug(true); conf.setNumWorkers(4); StormSubmitter.submitTopology("experimental-top", conf, builder.createTopology()); The above not only sets the parallelism hint (executioner threads per worker) to 1, but also the number of workers per component to 1. However, when I submit my topology, and I perform a storm list, I can see that I have 4 workers and 8 tasks running. Is this normal? My goal is to have each component executed by 1 thread on each machine. Am I missing something? Thanks, Nick -- Nikolaos Romanos Katsipoulakis, University of Pittsburgh, PhD candidate