Method and apparatus for scheduling multiple threads for execution in a shared microprocessor pipeline
AssigneeSun Microsystems, Inc.
InventorsKathirgamar Aingaran, Hong-Men Su
Life of this patent
Estimating the term…
Loading patent…
AssigneeSun Microsystems, Inc.
InventorsKathirgamar Aingaran, Hong-Men Su
Estimating the term…
An apparatus and method for scheduling execution of multiple threads on a shared processor resource is described in connection with a multithreaded multiprocessor chip. Using a thread selection policy that switches between available threads every cycle to give priority to the least recently executed or scheduled threads, different threads are able to operate in a way that ensures no deadlocks or livelocks while maximizing aggregate performance and fairness between threads. Prioritization is accomplished by monitoring and sorting thread status information for each thread, including speculative states in which a thread may be speculatively scheduled, thereby improving usage of the execution pipeline by switching a thread in with a lower priority.
A multithreaded processor comprising:
A method for scheduling multiple threads for execution on a shared processor pipeline, comprising:
An article of manufacture having at least one recordable medium having stored thereon one or more executable instructions which, when executed by at least one shared processing device, cause the at least one processing device to schedule execution of multiple threads on said processing device by:
Dependencies are inferred from the claim text.