University of California professor Dean Tullsen calls the process "simultaneous multithreading" (SMT). Many software applications already break their code up into separate streams of instructions executed by a processor, Tullsen explains. "But even those that don't can take advantage of SMT, as long as the system has multiple programs to be run. An SMT processor executes instructions from these multiple threads/programs at once, as if they all came from a single thread." Essentially, SMT makes one processor appear as two to the operating system. Intel claims an average improvement of roughly 40% in CPU resource use.
Intel earlier this year started building the technology into its high-end Intel Xeon microprocessors for servers. The company recently began shipping Pentium 4 processors running at 3.0 GHz with hyperthreading.
The idea of hardware multithreading in less aggressive forms is nothing new. But, says Tullsen, "The SMT execution model and the research we did demonstrates that you can achieve multithreading without sacrificing single-thread performance. It also could be done with minimal changes to the way we were already building modern processors."
Tullsen predicts SMT will soon spread from high-end chips to all microprocessors. He is already working on SMT-related improvements including operating systems, compilers, and next-generation multithreaded processor architectures.