There was a thread scheduling bug in the recent version of click. You may want to retry your efforts after updating the sources. If you map your element instances to difference kernel threads using StaticThreadSched and execute mpstat, the cpu utilization should be spread across different cores.