An apparatus and method for fine-grained multithreading in a
multipipelined processor core. According to one embodiment, a processor
may include instruction fetch logic configured to assign a given one of a
plurality of threads to a corresponding one of a plurality of thread
groups, where each of the plurality of thread groups may comprise a
subset of the plurality of threads, to issue a first instruction from one
of the plurality of threads during one execution cycle, and to issue a
second instruction from another one of the plurality of threads during a
successive execution cycle. The processor may further include a plurality
of execution units, each configured to execute instructions issued from a
respective thread group.