A Hardware-Software Integrated Solution for Improved Single-Instruction Multi-Thread Processor Efficiency