Adaptive Thread Management For Power, Temperature, And Reliability In Future Microprocessors