I get optimal performance when hyper threading is turned on and Bitcoin is limited to half the available cores. I get the same number of hashes per second when hyper threading is turned off, but hyper threading should allow better resource sharing between processes. Enabling Bitcoin to use all the virtual cores degrades the performance by roughly 7-8% and causes Firefox to lock up intermittently for a few seconds at a time. Enabling 6 or 7 out of 8 of my cores offers in between performance, but does not cause Firefox to lock up.
It seems that using 100% of half the virtual cores utilizes the full computing power of each core even though CPU performance graphs make it look like only half the computing power is being used. Using 100% of all the virtual cores also utilizes the full computing power of each core, but each virtual thread is then only utilizing on average 50% of the core and some performance is lost from the constant switching and balancing.
Thanks for including the hash measurement in version 0.3. In version 0.2 I almost always used more than half of my virtual cores.
P.S. My computer did not start up correctly when I restarted it and then disable hyper threading in the BIOS. I think it was because the computer needed to be powered down before making the change. I'm running Ubuntu AMD64 with an Intel Quad Core i7 at 2.8 GHz.