1. A multithread processor comprising: (a) a pipeline including (a1) a plurality of M parallel-connected standard processor root units operable to execute program instructions for different threads; (a2) a plurality of N sets of context memories, each containing information regarding a current processor state of a corresponding thread; and (a3) multiplexers configured to connect the N context memories and the M standard processor root units; and (b) a thread monitoring unit operable to selectively cause operable connection of each of the M parallel-connected standard processor root units to a corresponding set of context data; wherein the thread monitoring unit controls the multiplexers via multiplexer control signals for selection of the appropriate context; wherein M is equal to N; and wherein the instructions for the N context memories are distributed dynamically between the M standard processor root units.