MULTITHREADED COMPUTER SYSTEM AND MULTITHREAD EXECUTION CONTROL METHOD
First Claim
1. A multithreaded computer system, comprising:
- a plurality of processor elements, each of which is operable to execute a process including a plurality of threads; and
a control unit operable to switch threads to be executed in each processor element,wherein said control unit includes;
a plurality of execution order registers, each of which is provided for a corresponding one of said processor elements, and which holds an execution order of threads to be executed by said corresponding processor elements;
a plurality of counters, each of which is provided for a corresponding one of said processor elements, each counter counting an execution time period for a thread that is being executed by said corresponding processor element and generating a timeout signal when the counted time reaches a limit assigned to the thread; and
a scheduling circuit operable to switch the thread that is being executed to the thread to be executed by each processor element based on the execution order held in said execution order register and the timeout signal.
4 Assignments
0 Petitions
Accused Products
Abstract
A multithreaded computer system of the present invention includes a plurality of processor elements (PEs) 101 to 103, and a parallel processor control unit 200, which switches threads in each PE, and the parallel processor control unit 200 includes: a plurality of execution order registers, which hold, for each processor element, an execution order of threads to be executed; a plurality of counters 230, which count an execution time for a thread that is being executed by each processor element and generate a timeout signal when the counted time reaches a limit assigned to the thread; and a thread execution scheduler unit 210, which switches the thread that is being executed to the thread to be executed by each processor element based on the execution order held in said execution order register and the timeout signal.
116 Citations
14 Claims
-
1. A multithreaded computer system, comprising:
-
a plurality of processor elements, each of which is operable to execute a process including a plurality of threads; and a control unit operable to switch threads to be executed in each processor element, wherein said control unit includes; a plurality of execution order registers, each of which is provided for a corresponding one of said processor elements, and which holds an execution order of threads to be executed by said corresponding processor elements; a plurality of counters, each of which is provided for a corresponding one of said processor elements, each counter counting an execution time period for a thread that is being executed by said corresponding processor element and generating a timeout signal when the counted time reaches a limit assigned to the thread; and a scheduling circuit operable to switch the thread that is being executed to the thread to be executed by each processor element based on the execution order held in said execution order register and the timeout signal. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A multithread execution control method for use in a multithreaded computer system including:
- a plurality of processor elements operable to execute a process including a plurality of threads; and
a control unit operable to switch threads to be executed in each processor element,wherein said control unit includes;
a plurality of execution order registers provided corresponding to their respective processor elements, each execution order register holding an execution order of threads to be executed in the corresponding processor element;
a plurality of counters provided corresponding to their respective processor elements, each counter counting an execution time for a thread being executed by the corresponding processor element and generating a timeout signal when the counted time reaches a limit assigned to the thread; and
a scheduling circuit operable to switch the thread that is being executed to the thread to be executed by each processor element based on the execution order held in said execution order register and the timeout signal, andsaid multithread execution control method comprises; setting the execution order in said execution order register when said corresponding processor element is in a single thread mode; setting said processor element in a multithread mode; and executing a thread in said processor element in the multithread mode, while performing thread switching.
- a plurality of processor elements operable to execute a process including a plurality of threads; and
Specification