JP2006155480A - スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム - Google Patents
スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム Download PDFInfo
- Publication number
- JP2006155480A JP2006155480A JP2004348479A JP2004348479A JP2006155480A JP 2006155480 A JP2006155480 A JP 2006155480A JP 2004348479 A JP2004348479 A JP 2004348479A JP 2004348479 A JP2004348479 A JP 2004348479A JP 2006155480 A JP2006155480 A JP 2006155480A
- Authority
- JP
- Japan
- Prior art keywords
- execution
- thread
- group
- processor
- scheduling
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5066—Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
Abstract
【解決手段】 スレッド状態管理部32は、複数のスレッドをグループ化して、スレッドグループの状態を管理する。実行待ちキュー30は、実行待ちおよび実行中の状態にあるスレッドグループを優先度順かつ同一優先度内ではFIFO(First In First Out)順でキューイングする。割り当てリスト生成部12は、実行待ちキュー30の先頭から順にスレッドグループを取り出し、そのスレッドグループに属するすべてのスレッドを同時にいずれかのプロセッサに割り当てられる場合に限り、そのスレッドグループをスレッド割り当てリスト18に追加する。スレッド割り当て部14は、スレッド割り当てリスト18に格納されたスレッドグループに属するすべてのスレッドをプロセッサに割り当てる。
【選択図】 図6
Description
図1は、実施の形態1に係るマルチプロセッサシステムの構成図である。マルチプロセッサシステムは、複数のプロセッシングエレメント(PE)100とメインメモリ120を有し、それらはメインバス110に接続されている。各プロセッシングエレメント100は、プロセッサ130、ローカルメモリ140、およびメモリ制御部150を含む。プロセッサ130はローカルメモリ140に対してデータを読み書きすることができる。メモリ制御部150は、他のプロセッシングエレメント100のプロセッサ130からローカルメモリ140のデータを参照するときのインタフェースを与えるとともに、メモリの同期・排他制御の機能を提供する。
N(H)+N(M)>n
N(H)+N(L)≦n
実施の形態2に係るマルチプロセッサシステムは、図1のマルチプロセッサシステムと同じ構成であり、スレッドスケジューリングにより、ある時刻に各プロセッサ130には1つのスレッドが割り当てられ、マルチプロセッサシステム全体で並列に複数のスレッドが実行される。
実施の形態2のマルチプロセッサシステムでは、スレッドグループを定義しなかったが、実施の形態1と同様にスレッドをグループ化し、スレッドグループ単位でスケジューリングを行ってもよい。実施の形態3のマルチプロセッサシステムは、実施の形態1のマルチプロセッサシステムにおいて、実施の形態2で述べた非スケジューリング対象実行実体の占有資源をアドレス空間にメモリマップする方法を採用したものである。
Claims (24)
- マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする方法であって、
1つ以上の前記スケジューリング対象の実行単位をグループ化し、同一グループに属する前記実行単位の各々により占有されるプロセッサ内の資源を互いに参照できるように、各実行単位が参照するアドレス空間に前記資源をマップし、同一グループに属するすべての前記実行単位は同時にいずれかのプロセッサに割り当てるという制約の下で、グループのプロセッサへの割り当てを制御することを特徴とするスケジューリング方法。 - マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする方法であって、
1つ以上の前記スケジューリング対象の実行単位をグループ化してグループ単位でプロセッサへの割り当てを管理し、前記グループ毎に設定される優先度順でかつ同一優先度内では前記グループが待ち行列に到着した順で前記グループの優先順位を決め、同一グループに属するすべての実行単位は同時にいずれかのプロセッサに割り当てるという制約の下で、実行待ちおよび実行中の状態にあるグループを前記優先順位にしたがってプロセッサに割り当てることを特徴とするスケジューリング方法。 - マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする方法であって、
1つ以上の前記スケジューリング対象の実行単位を含むグループの内、実行待ちおよび実行中の状態にあるグループを前記グループ毎に設定される優先度順でかつ同一優先度内では到着順に格納した実行待ちキューの先頭から順に前記グループを取り出し、取り出したグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合に限り、そのグループに属するすべての実行単位をプロセッサに割り当て、そうでない場合は、それ以降に前記実行待ちキューから取り出されるグループの割り当てを優先することを特徴とするスケジューリング方法。 - プロセッサに割り当てる前記実行単位の数がプロセッサ総数に達するか、または前記実行待ちキューの末尾から前記グループが取り出されるに至るまで、前記実行待ちキューから順次取り出されるグループのプロセッサへの割り当て処理を繰り返すことを特徴とする請求項3に記載のスケジューリング方法。
- 前記実行待ちキューの先頭から順次取り出されるグループに属する各実行単位が既にいずれかのプロセッサに割り当てられて実行中である場合、その実行中である実行単位は、他のプロセッサに割り当て先を変更されて再配置されないように、その実行中である実行単位の当該プロセッサへの割り当てを確保することを特徴とする請求項3または4に記載のスケジューリング方法。
- マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする装置であって、
1つ以上の前記スケジューリング対象の実行単位をグループ化し、同一グループに属する前記実行単位の各々により占有されるプロセッサ内の資源を互いに参照できるように、各実行単位が参照するアドレス空間に前記資源をマップして管理するメモリ制御部と、
実行待ちおよび実行中の状態にあるグループを格納した実行待ちキューと、
前記実行待ちキューの先頭から順にグループを取り出し、取り出したグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合に限り、そのグループに属するすべての実行単位を複数のプロセッサに割り当てる割り当て部とを含むことを特徴とするスケジューリング装置。 - 当該装置は、実行単位をグループ化する初期設定の際に、同一グループに属する各実行単位が占有する前記資源の前記アドレス空間へのマップ先の領域を決定し、その資源のマップ先の領域に関する設定情報を当該グループが削除されるまで保持することを特徴とする請求項6に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに同時に割り当てられた同一グループに属する第1および第2の実行単位について、前記第1の実行単位が、前記アドレス空間にマップされた同一グループ内の前記第2の実行単位の資源領域にデータを書き込む操作を行うことにより、同一グループ内の前記第1の実行単位から前記第2の実行単位にデータが渡されることを特徴とする請求項6または7に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに同時に割り当てられた同一グループに属する第1および第2の実行単位について、前記第1の実行単位が、前記アドレス空間にマップされた同一グループ内の前記第2の実行単位の資源領域にデータを書き込む操作を行い、前記第2の実行単位が、当該資源に対するデータの書き込みの完了を待つことにより、同一グループ内の前記第1の実行単位と前記第2の実行単位の間で同期が取られることを特徴とする請求項6または7に記載のスケジューリング装置。
- マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする装置であって、
1つ以上の前記スケジューリング対象の実行単位を含むグループの内、実行待ちおよび実行中の状態にあるグループを前記グループ毎に設定される優先度順でかつ同一優先度内では到着順に格納した実行待ちキューと、
前記実行待ちキューの先頭から順にグループを取り出し、取り出したグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合に限り、そのグループをプロセッサへの割り当て候補となるグループを格納した割り当てリストに追加する割り当てリスト生成部と、
前記割り当てリスト生成部により生成された前記割り当てリストに格納されたグループに属するすべての実行単位を複数のプロセッサに割り当てる割り当て部とを含むことを特徴とするスケジューリング装置。 - 前記割り当てリスト生成部は、プロセッサに割り当てる実行単位の個数がプロセッサ総数に達するか、または前記実行待ちキューの末尾から前記グループが取り出されるに至るまで、前記割り当てリストの生成処理を繰り返すことを特徴とする請求項10に記載のスケジューリング装置。
- 実行中の状態にある実行単位とその実行単位が割り当てられているプロセッサとの対応関係を保持するスケジュールテーブルをさらに含み、
前記割り当てリスト生成部は、前記実行待ちキューから順次取り出したグループに属する各実行単位が前記スケジュールテーブルにある場合、その実行単位が割り当てられているプロセッサにフラグを設定し、前記実行待ちキューから順次取り出したグループに属する各実行単位が前記スケジュールテーブルになく、そのグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合、そのグループを前記割り当てリストに追加し、
前記割り当て部は、前記割り当てリストに格納されたグループに属するすべての実行単位を前記スケジュールテーブルにおいて前記フラグが設定されていないプロセッサに割り当てることを特徴とする請求項10または11に記載のスケジューリング装置。 - 同一グループに属する各実行単位がそれぞれの占有するプロセッサ内の資源を互いに参照できるように、前記資源は各実行単位が参照するアドレス空間にマップされていることを特徴とする請求項10から12のいずれかに記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに同時に割り当てられた同一グループに属する各実行単位が、前記アドレス空間にマップされた同一グループに属する各実行単位の資源領域に対してデータを読み書きすることにより、同一グループに属する複数の実行単位の間でデータの共有がなされることを特徴とする請求項13に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに同時に割り当てられた同一グループに属する第1および第2の実行単位について、前記第1の実行単位が、前記アドレス空間にマップされた同一グループ内の前記第2の実行単位の資源領域にデータを書き込む操作を行うことにより、同一グループ内の前記第1の実行単位から前記第2の実行単位にデータが渡されることを特徴とする請求項13に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに同時に割り当てられた同一グループに属する第1および第2の実行単位について、前記第1の実行単位が、前記アドレス空間にマップされた同一グループ内の前記第2の実行単位の資源領域にデータを書き込む操作を行い、前記第2の実行単位が、当該資源に対するデータの書き込みの完了を待つことにより、同一グループ内の前記第1の実行単位と前記第2の実行単位の間で同期が取られることを特徴とする請求項13に記載のスケジューリング装置。
- 並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てて並列に実行するマルチプロセッサシステムであって、
1つのプロセッサは、前記スケジューリング対象の実行単位を他の複数のプロセッサに割り当てるスケジューラを含み、
前記スケジューラは、
1つ以上の前記スケジューリング対象の実行単位をグループ化し、同一グループに属する前記実行単位の各々により占有されるプロセッサ内の資源を互いに参照できるように、各実行単位が参照するアドレス空間に前記資源をマップして管理するメモリ制御部と、
実行待ちおよび実行中の状態にあるグループを格納した実行待ちキューと、
前記実行待ちキューの先頭から順にグループを取り出し、取り出したグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合に限り、そのグループに属するすべての実行単位を複数のプロセッサに割り当てる割り当て部とを含むことを特徴とするマルチプロセッサシステム。 - 並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てて並列に実行するマルチプロセッサシステムであって、
1つのプロセッサは、前記スケジューリング対象の実行単位を他の複数のプロセッサに割り当てるスケジューラを含み、
前記スケジューラは、
1つ以上の前記スケジューリング対象の実行単位を含むグループの内、実行待ちおよび実行中の状態にあるグループを前記グループ毎に設定される優先度順でかつ同一優先度内では到着順に格納した実行待ちキューと、
前記実行待ちキューの先頭から順にグループを取り出し、取り出したグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合に限り、そのグループを割り当てリストに追加する割り当てリスト生成部と、
前記割り当てリスト生成部により生成された前記割り当てリストに格納されたグループに属するすべての実行単位を複数のプロセッサに割り当てる割り当て部とを含むことを特徴とするマルチプロセッサシステム。 - 並列処理されるスケジューリング対象の実行単位を1つ以上含むグループの内、実行待ちおよび実行中の状態にあるグループを前記グループ毎に設定される優先度順でかつ同一優先度内では到着順に格納した実行待ちキューの先頭から順にグループを取り出すステップと、
実行中の状態にある実行単位とその実行単位が割り当てられているプロセッサとの対応関係を保持するスケジュールテーブルを参照し、前記実行待ちキューから順次取り出したグループに属する各実行単位が前記スケジュールテーブルにある場合、その実行単位が割り当てられているプロセッサにフラグを設定するステップと、
前記実行待ちキューから順次取り出したグループに属する各実行単位が前記スケジュールテーブルになく、そのグループに属するすべての実行単位を同時にいずれかのプロセッサに割り当てることができる場合、そのグループを前記割り当てリストに追加するステップと、
前記割り当てリストに格納されたグループに属するすべての実行単位を前記スケジュールテーブルにおいて前記フラグが設定されていないプロセッサに割り当てるステップとをコンピュータに実行させることを特徴とするプログラム。 - マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする方法であって、
複数のプロセッサの内、少なくとも1つのプロセッサを並列処理されるスケジューリング対象の実行単位の割り当て対象から除外し、非割り当て対象のプロセッサ上で動作するスケジュール対象とならない実行単位により独占的に占有される当該プロセッサ内の資源を前記スケジューリング対象の実行単位から参照できるように、各実行単位が参照するアドレス空間に前記資源をマップした上で、前記実行単位の割り当て対象のプロセッサへの割り当てを制御することを特徴とするスケジューリング方法。 - マルチプロセッサシステムにおいて、並列処理されるスケジューリング対象の実行単位を複数のプロセッサに割り当てる順序をスケジュールする装置であって、
複数のプロセッサの内、少なくとも1つのプロセッサを並列処理されるスケジューリング対象の実行単位の割り当て対象から除外し、非割り当て対象のプロセッサ上で動作するスケジュール対象とならない実行単位により独占的に占有される当該プロセッサ内の資源を前記スケジューリング対象の実行単位から参照できるように、各スケジューリング対象の実行単位が参照するアドレス空間に前記資源をマップして管理するメモリ制御部と、
実行待ちおよび実行中の状態にある前記スケジューリング対象の実行単位を格納した実行待ちキューと、
前記実行待ちキューの先頭から順に前記スケジューリング対象の実行単位を取り出し、いずれかのプロセッサに割り当てる割り当て部とを含むことを特徴とするスケジューリング装置。 - 非割り当て対象のプロセッサ上で動作する非スケジューリング対象の実行単位により独占的に占有される当該プロセッサ内の資源の前記アドレス空間へのマップ先の領域は、いずれのスケジューリング対象の実行単位から見ても同じアドレスに固定されていることを特徴とする請求項21に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに割り当てられた前記スケジューリング対象の実行単位が、前記アドレス空間にマップされた非割り当て対象のプロセッサ上で動作する非スケジューリング対象の実行単位の資源領域にデータを書き込む操作を行うことにより、非割り当て対象のプロセッサの資源が直接的に制御されることを特徴とする請求項21または22に記載のスケジューリング装置。
- 前記割り当て部によりいずれかのプロセッサに割り当てられた前記スケジューリング対象の実行単位が、前記アドレス空間にマップされた非割り当て対象のプロセッサ上で動作する非スケジューリング対象の実行単位の資源領域にデータを書き込む操作を行い、前記非割り当て対象のプロセッサ上で動作する非スケジューリング対象の実行単位が、当該資源に対するデータの書き込みの完了を待つことにより、前記スケジューリング対象の実行単位と前記非スケジューリング対象の実行単位の間で同期が取られることを特徴とする請求項21または22に記載のスケジューリング装置。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004348479A JP4606142B2 (ja) | 2004-12-01 | 2004-12-01 | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
CN2005800412782A CN101069161B (zh) | 2004-12-01 | 2005-11-25 | 调度方法、调度装置和多处理器系统 |
PCT/JP2005/021663 WO2006059543A1 (ja) | 2004-12-01 | 2005-11-25 | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
EP05809655.3A EP1837762B1 (en) | 2004-12-01 | 2005-11-25 | Scheduling method, scheduling device, and multiprocessor system |
US11/291,073 US7913257B2 (en) | 2004-12-01 | 2005-11-30 | Scheduling method, scheduling apparatus and multiprocessor system |
TW094142287A TWI410866B (zh) | 2004-12-01 | 2005-12-01 | 排程方法、排程裝置、多工處理器系統及排程用程式 |
US13/012,054 US8166482B2 (en) | 2004-12-01 | 2011-01-24 | Scheduling method, scheduling apparatus and multiprocessor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004348479A JP4606142B2 (ja) | 2004-12-01 | 2004-12-01 | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006155480A true JP2006155480A (ja) | 2006-06-15 |
JP4606142B2 JP4606142B2 (ja) | 2011-01-05 |
Family
ID=36564977
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004348479A Active JP4606142B2 (ja) | 2004-12-01 | 2004-12-01 | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム |
Country Status (6)
Country | Link |
---|---|
US (2) | US7913257B2 (ja) |
EP (1) | EP1837762B1 (ja) |
JP (1) | JP4606142B2 (ja) |
CN (1) | CN101069161B (ja) |
TW (1) | TWI410866B (ja) |
WO (1) | WO2006059543A1 (ja) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009020692A (ja) * | 2007-07-11 | 2009-01-29 | Toshiba Corp | タスク管理装置、タスク管理方法及びタスク管理プログラム |
JP2009105701A (ja) * | 2007-10-24 | 2009-05-14 | Ricoh Co Ltd | 画像処理装置、画像処理方法及び該方法を実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体 |
JP2011124677A (ja) * | 2009-12-09 | 2011-06-23 | Nec Corp | パケット処理装置、パケット振り分け装置、制御プログラム及びパケット分散方法 |
JP2012517041A (ja) * | 2009-02-05 | 2012-07-26 | 日本電気株式会社 | 遺伝的アプローチによる期限付きタスクの受付制御・スケジューリング方法、システムおよびプログラム |
US8365179B2 (en) | 2008-09-30 | 2013-01-29 | Renesas Electronics Corporation | Multi-thread processor and its hardware thread scheduling method |
US8539203B2 (en) | 2008-09-30 | 2013-09-17 | Renesas Electronics Corporation | Multi-thread processor selecting threads on different schedule pattern for interrupt processing and normal operation |
US8607030B2 (en) | 2008-09-30 | 2013-12-10 | Renesas Electronics Corporation | Scheduling threads instructions in variably selected or predetermined order periods of requested time ratio |
US8615762B2 (en) | 2008-07-04 | 2013-12-24 | Nec Corporation | Multiprocessor system, multiple threads processing method and program |
JP2014164635A (ja) * | 2013-02-27 | 2014-09-08 | Nec Computertechno Ltd | リソース管理装置、リソースの管理方法、及びプログラム |
JP2015170270A (ja) * | 2014-03-10 | 2015-09-28 | 日本電気株式会社 | 情報処理装置、及び、そのリソースアクセス方法、並びに、リソースアクセスプログラム |
JP2016062388A (ja) * | 2014-09-19 | 2016-04-25 | 日本電気株式会社 | 情報処理装置、情報処理方法及びそのプログラム |
US11645124B2 (en) | 2018-02-16 | 2023-05-09 | Hitachi Astemo, Ltd. | Program execution control method and vehicle control device |
Families Citing this family (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7913206B1 (en) * | 2004-09-16 | 2011-03-22 | Cadence Design Systems, Inc. | Method and mechanism for performing partitioning of DRC operations |
DE102005001025A1 (de) * | 2005-01-07 | 2006-07-27 | Infineon Technologies Ag | Multithread-Prozessor mit Kontext-Umschaltung ohne Einschränkungen und/oder Zyklenverlust und Verfahren zum Betreiben eines solchen |
US7490230B2 (en) * | 2005-02-04 | 2009-02-10 | Mips Technologies, Inc. | Fetch director employing barrel-incrementer-based round-robin apparatus for use in multithreading microprocessor |
US7613904B2 (en) * | 2005-02-04 | 2009-11-03 | Mips Technologies, Inc. | Interfacing external thread prioritizing policy enforcing logic with customer modifiable register to processor internal scheduler |
US7506140B2 (en) * | 2005-02-04 | 2009-03-17 | Mips Technologies, Inc. | Return data selector employing barrel-incrementer-based round-robin apparatus |
US7681014B2 (en) * | 2005-02-04 | 2010-03-16 | Mips Technologies, Inc. | Multithreading instruction scheduler employing thread group priorities |
US7853777B2 (en) * | 2005-02-04 | 2010-12-14 | Mips Technologies, Inc. | Instruction/skid buffers in a multithreading microprocessor that store dispatched instructions to avoid re-fetching flushed instructions |
US7664936B2 (en) * | 2005-02-04 | 2010-02-16 | Mips Technologies, Inc. | Prioritizing thread selection partly based on stall likelihood providing status information of instruction operand register usage at pipeline stages |
US7631130B2 (en) * | 2005-02-04 | 2009-12-08 | Mips Technologies, Inc | Barrel-incrementer-based round-robin apparatus and instruction dispatch scheduler employing same for use in multithreading microprocessor |
US7657891B2 (en) * | 2005-02-04 | 2010-02-02 | Mips Technologies, Inc. | Multithreading microprocessor with optimized thread scheduler for increasing pipeline utilization efficiency |
US7657883B2 (en) * | 2005-02-04 | 2010-02-02 | Mips Technologies, Inc. | Instruction dispatch scheduler employing round-robin apparatus supporting multiple thread priorities for use in multithreading microprocessor |
US7752627B2 (en) * | 2005-02-04 | 2010-07-06 | Mips Technologies, Inc. | Leaky-bucket thread scheduler in a multithreading microprocessor |
US7904852B1 (en) | 2005-09-12 | 2011-03-08 | Cadence Design Systems, Inc. | Method and system for implementing parallel processing of electronic design automation tools |
JP4388518B2 (ja) * | 2005-11-01 | 2009-12-24 | 株式会社ソニー・コンピュータエンタテインメント | スレッドデバッグ装置、スレッドデバッグ方法及びプログラム |
JP2009519513A (ja) * | 2005-12-06 | 2009-05-14 | ボストンサーキッツ インコーポレイテッド | 専用スレッド管理を用いたマルチコアの演算処理方法及び装置 |
US8448096B1 (en) | 2006-06-30 | 2013-05-21 | Cadence Design Systems, Inc. | Method and system for parallel processing of IC design layouts |
US7657856B1 (en) | 2006-09-12 | 2010-02-02 | Cadence Design Systems, Inc. | Method and system for parallel processing of IC design layouts |
US7760748B2 (en) * | 2006-09-16 | 2010-07-20 | Mips Technologies, Inc. | Transaction selector employing barrel-incrementer-based round-robin apparatus supporting dynamic priorities in multi-port switch |
US7773621B2 (en) * | 2006-09-16 | 2010-08-10 | Mips Technologies, Inc. | Transaction selector employing round-robin apparatus supporting dynamic priorities in multi-port switch |
US7990989B2 (en) * | 2006-09-16 | 2011-08-02 | Mips Technologies, Inc. | Transaction selector employing transaction queue group priorities in multi-port switch |
US7961745B2 (en) * | 2006-09-16 | 2011-06-14 | Mips Technologies, Inc. | Bifurcated transaction selector supporting dynamic priorities in multi-port switch |
JP5050601B2 (ja) * | 2007-03-23 | 2012-10-17 | 日本電気株式会社 | ジョブへの資源割当方式、ジョブへの資源割当方法およびプログラム |
US20080271027A1 (en) * | 2007-04-27 | 2008-10-30 | Norton Scott J | Fair share scheduling with hardware multithreading |
US9384159B2 (en) * | 2007-05-24 | 2016-07-05 | International Business Machines Corporation | Creating a checkpoint for a software partition in an asynchronous input/output environment |
TWI386851B (zh) * | 2007-09-14 | 2013-02-21 | Hon Hai Prec Ind Co Ltd | 排程任務更新系統及方法 |
TWI462011B (zh) * | 2007-12-28 | 2014-11-21 | Accton Technology Corp | 程序之執行緒群組管理方法 |
CN101494636B (zh) * | 2008-01-23 | 2013-01-16 | 中兴通讯股份有限公司 | 一种基于快速io互连技术的数据排序方法及装置 |
US8561072B2 (en) * | 2008-05-16 | 2013-10-15 | Microsoft Corporation | Scheduling collections in a scheduler |
US8566830B2 (en) * | 2008-05-16 | 2013-10-22 | Microsoft Corporation | Local collections of tasks in a scheduler |
US8769048B2 (en) | 2008-06-18 | 2014-07-01 | Commvault Systems, Inc. | Data protection scheduling, such as providing a flexible backup window in a data protection system |
US8296773B2 (en) | 2008-06-30 | 2012-10-23 | International Business Machines Corporation | Systems and methods for thread assignment and core turn-off for integrated circuit energy efficiency and high-performance |
GB0820920D0 (en) * | 2008-11-14 | 2008-12-24 | Wolfson Microelectronics Plc | Codec apparatus |
JP5241550B2 (ja) * | 2009-02-12 | 2013-07-17 | 株式会社日立製作所 | ファイル入出力方法 |
US20120131584A1 (en) * | 2009-02-13 | 2012-05-24 | Alexey Raevsky | Devices and Methods for Optimizing Data-Parallel Processing in Multi-Core Computing Systems |
US20110010716A1 (en) * | 2009-06-12 | 2011-01-13 | Arvind Raghuraman | Domain Bounding for Symmetric Multiprocessing Systems |
JP5447807B2 (ja) * | 2009-08-07 | 2014-03-19 | 株式会社日立製作所 | バリア同期方法及び計算機 |
US8352946B2 (en) * | 2009-08-11 | 2013-01-08 | International Business Machines Corporation | Managing migration ready queue associated with each processor based on the migration ready status of the tasks |
US8832712B2 (en) * | 2009-09-09 | 2014-09-09 | Ati Technologies Ulc | System and method for synchronizing threads using shared memory having different buffer portions for local and remote cores in a multi-processor system |
CN101673223B (zh) * | 2009-10-22 | 2012-03-21 | 同济大学 | 基于片上多处理器的线程调度实现方法 |
CN101788908B (zh) * | 2010-01-26 | 2014-11-05 | 浪潮(山东)电子信息有限公司 | 一种支持断点续航的批量数据处理方法 |
WO2011118011A1 (ja) | 2010-03-25 | 2011-09-29 | 富士通株式会社 | マルチコアプロセッサシステム、制御プログラム、および制御方法 |
US9886315B2 (en) * | 2010-08-27 | 2018-02-06 | Ebay Inc. | Identity and semaphore-based quality of service |
US20130117168A1 (en) * | 2011-11-04 | 2013-05-09 | Mark Henrik Sandstrom | Maximizing Throughput of Multi-user Parallel Data Processing Systems |
US8789065B2 (en) | 2012-06-08 | 2014-07-22 | Throughputer, Inc. | System and method for input data load adaptive parallel processing |
US9158592B2 (en) | 2011-05-02 | 2015-10-13 | Green Hills Software, Inc. | System and method for time variant scheduling of affinity groups comprising processor core and address spaces on a synchronized multicore processor |
RU2011117765A (ru) * | 2011-05-05 | 2012-11-10 | ЭлЭсАй Корпорейшн (US) | Устройство (варианты) и способ реализации двухпроходного планировщика задач линейной сложности |
WO2012153200A1 (en) * | 2011-05-10 | 2012-11-15 | International Business Machines Corporation | Process grouping for improved cache and memory affinity |
KR101897598B1 (ko) * | 2011-05-13 | 2018-09-13 | 삼성전자 주식회사 | 디지털 디바이스의 어플리케이션 처리 속도 향상 방법 및 장치 |
US9183047B2 (en) | 2011-05-13 | 2015-11-10 | Samsung Electronics Co., Ltd. | Classifying requested application based on processing and response time and scheduling threads of the requested application according to a preset group |
CN102193779A (zh) * | 2011-05-16 | 2011-09-21 | 武汉科技大学 | 一种面向MPSoC的多线程调度方法 |
US9448847B2 (en) | 2011-07-15 | 2016-09-20 | Throughputer, Inc. | Concurrent program execution optimization |
US8745626B1 (en) * | 2012-12-17 | 2014-06-03 | Throughputer, Inc. | Scheduling application instances to configurable processing cores based on application requirements and resource specification |
US9158587B2 (en) * | 2012-01-19 | 2015-10-13 | International Business Machines Corporation | Flexible task and thread binding with preferred processors based on thread layout |
US9069564B1 (en) * | 2012-02-14 | 2015-06-30 | Netlogic Microsystems, Inc. | Weighted instruction count scheduling |
US9286115B2 (en) * | 2012-06-21 | 2016-03-15 | Microsoft Technology Licensing, Llc | Performant runtime pause with no CPU utilization |
CN102929707B (zh) * | 2012-11-06 | 2015-10-07 | 无锡江南计算技术研究所 | 并行任务动态分配方法 |
CN104422694A (zh) * | 2013-09-11 | 2015-03-18 | 法国圣戈班玻璃公司 | 测量数据的处理装置及处理方法、光学测量系统 |
GB2521155B (en) | 2013-12-10 | 2021-06-02 | Advanced Risc Mach Ltd | Configuring thread scheduling on a multi-threaded data processing apparatus |
GB2521151B (en) * | 2013-12-10 | 2021-06-02 | Advanced Risc Mach Ltd | Configurable thread ordering for a data processing apparatus |
US10169121B2 (en) | 2014-02-27 | 2019-01-01 | Commvault Systems, Inc. | Work flow management for an information management system |
CN105656973B (zh) * | 2014-11-25 | 2018-11-13 | 中国科学院声学研究所 | 一种分布式节点组内任务调度方法及系统 |
US10297347B2 (en) * | 2015-04-06 | 2019-05-21 | Preventice Solutions, Inc. | Adverse event prioritization and handling |
US9727944B2 (en) * | 2015-06-22 | 2017-08-08 | Apple Inc. | GPU instruction storage |
US20180032376A1 (en) * | 2016-07-27 | 2018-02-01 | Samsung Electronics Co .. Ltd. | Apparatus and method for group-based scheduling in multi-core processor system |
CN106445675B (zh) * | 2016-10-20 | 2019-12-31 | 焦点科技股份有限公司 | 一种b2b平台分布式应用调度与资源分配方法 |
US10789240B2 (en) * | 2017-11-06 | 2020-09-29 | Google Llc | Duplicative data detection |
US10754729B2 (en) | 2018-03-12 | 2020-08-25 | Commvault Systems, Inc. | Recovery point objective (RPO) driven backup scheduling in a data storage management system |
EP3776242A1 (en) * | 2018-03-31 | 2021-02-17 | Micron Technology, Inc. | Multi-threaded self-scheduling reconfigurable computing fabric |
US10754706B1 (en) | 2018-04-16 | 2020-08-25 | Microstrategy Incorporated | Task scheduling for multiprocessor systems |
CN108595366A (zh) * | 2018-04-16 | 2018-09-28 | 哈尔滨工业大学(威海) | 一种实时的容错的多处理器系统结构模型 |
US10860443B2 (en) | 2018-12-10 | 2020-12-08 | Commvault Systems, Inc. | Evaluation and reporting of recovery readiness in a data storage management system |
DE112019006773T5 (de) * | 2019-01-30 | 2021-11-04 | Fujifilm Corporation | Medizinische Bildanalysevorrichtung, Verfahren und Programm |
CN112667369A (zh) * | 2020-06-08 | 2021-04-16 | 宸芯科技有限公司 | 一种线程调度方法、装置、存储介质及电子设备 |
CN114237274B (zh) * | 2021-09-28 | 2024-04-19 | 航天时代飞鸿技术有限公司 | 融合imu的旋翼无人机环境障碍物快速感知方法及系统 |
US12118384B2 (en) | 2021-10-29 | 2024-10-15 | Blackberry Limited | Scheduling of threads for clusters of processors |
US12131184B2 (en) | 2021-10-29 | 2024-10-29 | Blackberry Limited | Thread scheduling including preemption of a thread in a kernel persona |
US12112193B2 (en) | 2021-10-29 | 2024-10-08 | Blackberry Limited | Thread state transitions |
US12106141B2 (en) | 2021-10-29 | 2024-10-01 | Blackberry Limited | Interrupt handling |
KR20240136005A (ko) * | 2023-03-06 | 2024-09-13 | 한국전자통신연구원 | 병렬연산작업 오프로딩 장치 및 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187312A (ja) * | 1992-12-18 | 1994-07-08 | Omron Corp | マルチcpuシステムにおける処理方法および装置 |
JPH1063525A (ja) * | 1996-08-23 | 1998-03-06 | Canon Inc | 情報処理装置、情報処理システム及びその制御方法 |
JP2000330807A (ja) * | 1999-05-24 | 2000-11-30 | Nec Corp | 複数のプロセッサで同時にスレッドの実行を開始させる方法及びその装置並びにコンピュータ可読記録媒体 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3259620B2 (ja) * | 1995-12-21 | 2002-02-25 | 株式会社日立製作所 | 資源割り当て方法 |
JPH09179834A (ja) * | 1995-12-25 | 1997-07-11 | Hitachi Ltd | 並列システムにおけるプロセスのスケジューリング方法 |
JPH09274608A (ja) * | 1996-04-04 | 1997-10-21 | Hitachi Ltd | マルチプロセッサシステムにおけるプロセッサ間の負荷配分制御方法 |
GB2334116A (en) * | 1998-02-04 | 1999-08-11 | Ibm | Scheduling and dispatching queued client requests within a server computer |
US6601146B2 (en) * | 1998-06-16 | 2003-07-29 | International Business Machines Corporation | Technique for efficiently transferring moderate amounts of data across address space boundary |
US6314501B1 (en) * | 1998-07-23 | 2001-11-06 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
US6910210B1 (en) * | 1998-11-24 | 2005-06-21 | Microsoft Corp. | System and method for terminating applications |
US6526491B2 (en) * | 2001-03-22 | 2003-02-25 | Sony Corporation Entertainment Inc. | Memory protection system and method for computer architecture for broadband networks |
JP2003263331A (ja) * | 2002-03-07 | 2003-09-19 | Toshiba Corp | マルチプロセッサシステム |
US7360219B2 (en) * | 2002-12-13 | 2008-04-15 | Hewlett-Packard Development Company, L.P. | Systems and methods for facilitating fair and efficient scheduling of processes among multiple resources in a computer system |
US20040237087A1 (en) * | 2003-05-08 | 2004-11-25 | Nong Ye | Job scheduling techniques to reduce the variance of waiting time |
JP3892829B2 (ja) * | 2003-06-27 | 2007-03-14 | 株式会社東芝 | 情報処理システムおよびメモリ管理方法 |
-
2004
- 2004-12-01 JP JP2004348479A patent/JP4606142B2/ja active Active
-
2005
- 2005-11-25 WO PCT/JP2005/021663 patent/WO2006059543A1/ja active Application Filing
- 2005-11-25 EP EP05809655.3A patent/EP1837762B1/en active Active
- 2005-11-25 CN CN2005800412782A patent/CN101069161B/zh active Active
- 2005-11-30 US US11/291,073 patent/US7913257B2/en active Active
- 2005-12-01 TW TW094142287A patent/TWI410866B/zh active
-
2011
- 2011-01-24 US US13/012,054 patent/US8166482B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06187312A (ja) * | 1992-12-18 | 1994-07-08 | Omron Corp | マルチcpuシステムにおける処理方法および装置 |
JPH1063525A (ja) * | 1996-08-23 | 1998-03-06 | Canon Inc | 情報処理装置、情報処理システム及びその制御方法 |
JP2000330807A (ja) * | 1999-05-24 | 2000-11-30 | Nec Corp | 複数のプロセッサで同時にスレッドの実行を開始させる方法及びその装置並びにコンピュータ可読記録媒体 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009020692A (ja) * | 2007-07-11 | 2009-01-29 | Toshiba Corp | タスク管理装置、タスク管理方法及びタスク管理プログラム |
JP2009105701A (ja) * | 2007-10-24 | 2009-05-14 | Ricoh Co Ltd | 画像処理装置、画像処理方法及び該方法を実行させるためのプログラムを格納したコンピュータ読み取り可能な記録媒体 |
US8615762B2 (en) | 2008-07-04 | 2013-12-24 | Nec Corporation | Multiprocessor system, multiple threads processing method and program |
US9098336B2 (en) | 2008-09-30 | 2015-08-04 | Renesas Electronics Corporation | Multi-thread processor and its hardware thread scheduling method |
US8365179B2 (en) | 2008-09-30 | 2013-01-29 | Renesas Electronics Corporation | Multi-thread processor and its hardware thread scheduling method |
US8539203B2 (en) | 2008-09-30 | 2013-09-17 | Renesas Electronics Corporation | Multi-thread processor selecting threads on different schedule pattern for interrupt processing and normal operation |
US8607030B2 (en) | 2008-09-30 | 2013-12-10 | Renesas Electronics Corporation | Scheduling threads instructions in variably selected or predetermined order periods of requested time ratio |
US9501320B2 (en) | 2008-09-30 | 2016-11-22 | Renesas Electronics Corporation | Scheduling threads according to real time bit in predetermined time period or in variable time period of requested time ratio |
US9529597B2 (en) | 2008-09-30 | 2016-12-27 | Renesas Electronics Corporation | Multithread processor with different schedule pattern cycle state for handling interrupt processing |
JP2012517041A (ja) * | 2009-02-05 | 2012-07-26 | 日本電気株式会社 | 遺伝的アプローチによる期限付きタスクの受付制御・スケジューリング方法、システムおよびプログラム |
JP2011124677A (ja) * | 2009-12-09 | 2011-06-23 | Nec Corp | パケット処理装置、パケット振り分け装置、制御プログラム及びパケット分散方法 |
JP2014164635A (ja) * | 2013-02-27 | 2014-09-08 | Nec Computertechno Ltd | リソース管理装置、リソースの管理方法、及びプログラム |
JP2015170270A (ja) * | 2014-03-10 | 2015-09-28 | 日本電気株式会社 | 情報処理装置、及び、そのリソースアクセス方法、並びに、リソースアクセスプログラム |
JP2016062388A (ja) * | 2014-09-19 | 2016-04-25 | 日本電気株式会社 | 情報処理装置、情報処理方法及びそのプログラム |
US11645124B2 (en) | 2018-02-16 | 2023-05-09 | Hitachi Astemo, Ltd. | Program execution control method and vehicle control device |
Also Published As
Publication number | Publication date |
---|---|
US20110119674A1 (en) | 2011-05-19 |
TW200632743A (en) | 2006-09-16 |
WO2006059543A1 (ja) | 2006-06-08 |
US7913257B2 (en) | 2011-03-22 |
EP1837762A1 (en) | 2007-09-26 |
EP1837762B1 (en) | 2017-03-01 |
EP1837762A4 (en) | 2014-09-17 |
US8166482B2 (en) | 2012-04-24 |
CN101069161B (zh) | 2010-10-06 |
TWI410866B (zh) | 2013-10-01 |
CN101069161A (zh) | 2007-11-07 |
JP4606142B2 (ja) | 2011-01-05 |
US20060123420A1 (en) | 2006-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4606142B2 (ja) | スケジューリング方法、スケジューリング装置およびマルチプロセッサシステム | |
US11550627B2 (en) | Hardware accelerated dynamic work creation on a graphics processing unit | |
EP2288989B1 (en) | Local collections of tasks in a scheduler | |
JP5597196B2 (ja) | プロセス内のスケジューラインスタンス | |
US8769543B2 (en) | System and method for maximizing data processing throughput via application load adaptive scheduling and context switching | |
JP2011059777A (ja) | タスクスケジューリング方法及びマルチコアシステム | |
US11698816B2 (en) | Lock-free work-stealing thread scheduler | |
KR20130033020A (ko) | 매니코어 시스템에서의 파티션 스케줄링 장치 및 방법 | |
CN112925616A (zh) | 任务分配方法、装置、存储介质及电子设备 | |
JP2006099332A (ja) | 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム | |
JP5820525B2 (ja) | 仮想計算機のスケジュールシステム及びその方法 | |
Suzuki et al. | Real-time GPU resource management with loadable kernel modules | |
Tabish et al. | An analyzable inter-core communication framework for high-performance multicore embedded systems | |
Dauphin et al. | Odyn: Deadlock prevention and hybrid scheduling algorithm for real-time dataflow applications | |
JP2009252133A (ja) | ベクトル処理装置及びベクトル処理方法 | |
JP5641128B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法、およびマルチコアプロセッサシステムの制御プログラム | |
JPH05151064A (ja) | 密結合マルチプロセツサシステム | |
WO2008026142A1 (en) | Dynamic cache partitioning | |
Tabish et al. | Sce-comm: A real-time inter-core communication framework for strictly partitioned multi-core processors | |
JPH11249917A (ja) | 並列型計算機及びそのバッチ処理方法及び記録媒体 | |
US20240289188A1 (en) | Energy friendly event processing task model | |
JP2009211604A (ja) | 情報処理装置、情報処理方法、プログラム、及び、記憶媒体 | |
Langer et al. | Work-in-Progress: Real-Time Scheduling of Parallel Applications with Gang Scheduling | |
US9141438B2 (en) | Logic for synchronizing multiple tasks | |
Chen et al. | QoS-Aware Task Reordering for Accelerators |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091222 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100625 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101005 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101005 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4606142 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131015 Year of fee payment: 3 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20101124 |
|
A072 | Dismissal of procedure [no reply to invitation to correct request for examination] |
Free format text: JAPANESE INTERMEDIATE CODE: A072 Effective date: 20110412 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |