You probably have spare CPU cycles while the thread blocks for some resources like memory. These CPU cycles can be used by other threads. The data I'd look at is... Does the 4 thread version show 100% utilization of each core? If not the you've found your spare CPU cycles.