Intel® recommends that the following software techniques be used to optimize code for execution on HT-enabled processors:
The OS scheduler should schedule threads to be executed on logical processors within different physical processors before scheduling threads to be executed on both of the logical processors within the same physical processor.
Eliminate spin-wait loops wherever possible.
Execute the HLT instruction on a logical processor when entering an idle period.
The OS scheduler should attempt to balance the load placed on each of the logical processors.
Attempt to share code and data between the threads executing on each of the logical processors within the same physical processor.
Eliminate or decrease the ...