JP5653431B2 - マルチプロセッサシステム - Google Patents
マルチプロセッサシステム Download PDFInfo
- Publication number
- JP5653431B2 JP5653431B2 JP2012522419A JP2012522419A JP5653431B2 JP 5653431 B2 JP5653431 B2 JP 5653431B2 JP 2012522419 A JP2012522419 A JP 2012522419A JP 2012522419 A JP2012522419 A JP 2012522419A JP 5653431 B2 JP5653431 B2 JP 5653431B2
- Authority
- JP
- Japan
- Prior art keywords
- task
- processor
- unit
- tasks
- execution order
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 claims description 79
- 230000008859 change Effects 0.000 claims description 42
- 230000000737 periodic effect Effects 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 20
- 238000004458 analytical method Methods 0.000 description 44
- 238000010586 diagram Methods 0.000 description 26
- 238000005516 engineering process Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 3
- 230000003252 repetitive effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012508 change request Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
- G06F9/4887—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/008—Reliability or availability analysis
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Description
図1は本発明の実施の形態1における、マルチプロセッサシステム100の構成図である。マルチプロセッサシステム100は、複数のタスクからなるタスクセットを繰り返し実行するマルチプロセッサシステムである。
以下、本発明の実施の形態2におけるマルチプロセッサシステム100について、図面を参照しながら説明する。
以下、本発明の実施の形態3における、マルチプロセッサシステム100を備えるシステムLSI、及び、テジタルテレビについて、図面を参照しながら説明する。
101 共有バス
102 共有資源(メモリ)
103 バスアクセス
104 アクセス競合バス
105 タスク情報バス
106 分析結果バス
107 調停信号バス
108 調停部
109 ロック情報保持部
110 共有領域情報保持部
111 優先度保持部
112 リソースアクセス調停部
120 保持部
150 バスコントローラ
200 プロセッサ
201 タスクスケジューラ
202 タイムカウンタ
203 タスク切替器
204 タスクコンテキスト
205 演算ユニット
206 タスク実行時間残量
208 タスクコンテキスト接続バス
209 演算ユニット接続バス
220 周期スケジューリング情報
222 タスク周期
224 プロセッサ0の実行順序
226 プロセッサ1の実行順序
230 スケジューリング変更指示
232 破綻タスク識別情報
300 スケジューラ管理装置
301 タスク情報分析部
302 タスク周期カウンタ
303 完了タスク記憶部
304 破綻パターン記憶部
305 競合カウンタ
306 記憶許可情報保持部
310 指示部
312 タスク比較部
314 破綻判定部
320 プロセッサ0のタスク処理
321 タスクC
330 プロセッサ1のタスク処理
331 タスクA
332 タスクB
400 システムLSI
401 システムバス
402 外部データ入出力部
403 外部記憶装置接続部
404 外部制御機器接続部
500 デジタルテレビ
501 外部制御機器
502 外部記憶装置
503 放送データの受信装置
504 映像出力装置
505 音声出力装置
Claims (7)
- 複数のタスクからなるタスクセットを繰り返し実行するマルチプロセッサシステムであって、
前記マルチプロセッサシステムが備える複数のプロセッサの各々は、前記タスクセットの繰り返し実行の1周期として定められたタスク周期以内に前記複数のプロセッサで実行されるべき前記タスクセットに含まれるタスクのタスク実行順序と各前記タスクを実行するプロセッサとを決定するタスクスケジューラを備え、
前記マルチプロセッサシステムは、前記複数のタスクスケジューラの少なくとも1つに前記タスク実行順序の変更を指示する指示部を有するスケジューラ管理装置を備えており、
前記複数のタスクスケジューラの各々は、前記指示部から前記指示を受けると、前記複数のプロセッサの前記タスク実行順序を変更し、
前記スケジューラ管理装置は、さらに、タスク比較部と、破綻パターン記憶部とを備えており、
前記破綻パターン記憶部は、前記タスクセットの繰り返し実行の1回分の処理であるタスクセット処理が複数プロセッサ間のアクセス競合に起因して前記タスク周期以内に完了しないタスクセットに含まれるタスクのタスク実行順序、各前記タスクを実行するプロセッサのプロセッサID及び前記タスク周期を含む情報を破綻パターンとして1以上記憶し、
前記複数のタスクスケジューラのうちの第1のタスクスケジューラは、前記タスクセットに含まれるタスクのタスク実行順序、各前記タスクを実行するプロセッサのプロセッサID及び前記タスク周期を含む周期スケジューリング情報を前記タスク比較部に通知し、
前記タスク比較部は、通知された前記周期スケジューリング情報と前記破綻パターンとを比較することにより一致するか否かを判定し、
一致する前記破綻パターンがある場合には、前記指示部は前記複数のタスクスケジューラの少なくとも1つに前記周期スケジューリング情報に含まれるタスク実行順序の変更を指示する
マルチプロセッサシステム。 - 複数のタスクからなるタスクセットを繰り返し実行するマルチプロセッサシステムであって、
前記マルチプロセッサシステムが備える複数のプロセッサの各々は、前記タスクセットの繰り返し実行の1周期として定められたタスク周期以内に前記複数のプロセッサで実行されるべき前記タスクセットに含まれるタスクのタスク実行順序と各前記タスクを実行するプロセッサとを決定するタスクスケジューラを備え、
前記マルチプロセッサシステムは、前記複数のタスクスケジューラの少なくとも1つに前記タスク実行順序の変更を指示する指示部を有するスケジューラ管理装置を備えており、
前記複数のタスクスケジューラの各々は、前記指示部から前記指示を受けると、前記複数のプロセッサの前記タスク実行順序を変更し、
前記スケジューラ管理装置は、さらに、タスク周期カウンタと、完了タスク記憶部と、破綻判定部とを備えており、
前記複数のプロセッサの各々は、前記繰り返し実行の1回分の処理であるタスクセット処理が完了したタスクのタスク識別情報を前記スケジューラ管理装置へ通知し、
前記完了タスク記憶部は、通知された前記タスクセット処理が完了したタスクのタスク識別情報を記憶し、
前記タスク周期カウンタは、前記複数のプロセッサにより前記タスクセットの実行を開始してからのサイクル数をカウントし、
前記破綻判定部は、前記タスクセットに含まれているタスクのうち、前記サイクル数が前記タスク周期を超えた時点で前記完了タスク記憶部に記憶されていないタスクである破綻タスクがあるか否かを判定し、
判定の結果、前記破綻タスクが1以上あった場合には、前記指示部は前記複数のタスクスケジューラのうち少なくとも1つに前記タスク実行順序の変更を指示する
マルチプロセッサシステム。 - 前記タスク実行順序の変更の指示には、前記1以上の破綻タスクのタスク識別情報が含まれており、
前記指示を受けたタスクスケジューラは、当該タスク識別情報に対応するタスクを実行するプロセッサが実行する他のタスクよりも、前記タスク識別情報に対応するタスクの実行順位が後になるように、前記タスク実行順序を変更する
請求項2に記載のマルチプロセッサシステム。 - 前記マルチプロセッサシステムは、さらに、バスコントローラを有する共有バスと、前記共有バスを介して前記複数のプロセッサが情報を書き込む共有資源とを備え、
前記バスコントローラは、前記複数のプロセッサの各々で実行され、前記共有資源に書き込みを行う時間が重なっている2以上の競合タスクのタスク識別情報を保持する保持部を有しており、
前記指示部は、前記タスク実行順序の変更の指示に、前記破綻タスクであり、かつ、前記保持部に保持されている前記競合タスクのタスク識別情報を含める
請求項3に記載のマルチプロセッサシステム。 - 前記共有資源は共有メモリ及び入出力インタフェースのいずれかである
請求項4に記載のマルチプロセッサシステム。 - 前記スケジューラ管理装置は、さらに、破綻パターン記憶部とタスク比較部とを備えており、
実行されたタスクセットに破綻タスクが含まれると前記破綻判定部によって判定された場合に、前記スケジューラ管理装置は、当該タスクセットに含まれるタスクのタスク実行順序、各前記タスクを実行するプロセッサのプロセッサID及び前記タスク周期を含む情報を破綻パターンとして前記破綻パターン記憶部に記憶させ、
前記複数のタスクスケジューラのうちの第1のタスクスケジューラは、これから実行されるタスクセットに含まれるタスクのタスク実行順序、各前記タスクを実行するプロセッサのプロセッサID及び前記タスク周期を含む周期スケジューリング情報を前記タスク比較部に通知し、
前記タスク比較部は、通知された前記周期スケジューリング情報と前記破綻パターンとを比較することにより一致するか否かを判定し、
一致する前記破綻パターンがある場合には、前記指示部は前記複数のタスクスケジューラの少なくとも1つに前記周期スケジューリング情報に含まれる前記タスク実行順序の変更を指示する
請求項2に記載のマルチプロセッサシステム。 - 前記タスク周期カウンタはレジスタである
請求項2に記載のマルチプロセッサシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012522419A JP5653431B2 (ja) | 2010-07-02 | 2011-01-21 | マルチプロセッサシステム |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010151533 | 2010-07-02 | ||
JP2010151533 | 2010-07-02 | ||
JP2012522419A JP5653431B2 (ja) | 2010-07-02 | 2011-01-21 | マルチプロセッサシステム |
PCT/JP2011/000325 WO2012001835A1 (ja) | 2010-07-02 | 2011-01-21 | マルチプロセッサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2012001835A1 JPWO2012001835A1 (ja) | 2013-08-22 |
JP5653431B2 true JP5653431B2 (ja) | 2015-01-14 |
Family
ID=45401587
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012522419A Active JP5653431B2 (ja) | 2010-07-02 | 2011-01-21 | マルチプロセッサシステム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9170841B2 (ja) |
JP (1) | JP5653431B2 (ja) |
WO (1) | WO2012001835A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10838765B2 (en) | 2017-04-28 | 2020-11-17 | Samsung Electronics Co., Ltd. | Task execution method for voice input and electronic device supporting the same |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015210688A (ja) * | 2014-04-28 | 2015-11-24 | 株式会社日立製作所 | サーバ仮想化システム |
US9909406B2 (en) * | 2014-05-16 | 2018-03-06 | Baker Hughes, A Ge Company, Llc | Automated delivery of wellbore construction services |
US9582268B2 (en) * | 2015-05-27 | 2017-02-28 | Runnable Inc. | Automatic communications graphing for a source application |
US20160350081A1 (en) | 2015-05-27 | 2016-12-01 | Runnable Inc. | Automatic container definition |
JP6802480B2 (ja) | 2017-01-27 | 2020-12-16 | 富士通株式会社 | プロセッサ、情報処理装置及びプロセッサの動作方法 |
JP2018163528A (ja) * | 2017-03-27 | 2018-10-18 | 日立オートモティブシステムズ株式会社 | 車両制御装置 |
US11334391B2 (en) * | 2017-04-17 | 2022-05-17 | Red Hat, Inc. | Self-programmable and self-tunable resource scheduler for jobs in cloud computing |
DE102018205390A1 (de) * | 2018-04-10 | 2019-10-10 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten |
US11099778B2 (en) * | 2018-08-08 | 2021-08-24 | Micron Technology, Inc. | Controller command scheduling in a memory system to increase command bus utilization |
JP2020149526A (ja) * | 2019-03-15 | 2020-09-17 | 株式会社東芝 | 処理装置、処理方法及びプログラム |
US11435947B2 (en) | 2019-07-02 | 2022-09-06 | Samsung Electronics Co., Ltd. | Storage device with reduced communication overhead using hardware logic |
US11768701B2 (en) * | 2019-09-17 | 2023-09-26 | Western Digital Technologies, Inc. | Exception analysis for data storage devices |
JP7427474B2 (ja) * | 2020-02-27 | 2024-02-05 | 三菱重工業株式会社 | 観測制御装置、観測システム、及び宇宙機、並びに観測制御方法、並びに観測制御プログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231181A (ja) * | 1996-02-28 | 1997-09-05 | Mitsubishi Electric Corp | 並列計算機における動的負荷分散方法 |
JP2000112773A (ja) * | 1998-10-01 | 2000-04-21 | Okinawa Nippon Denki Software Kk | 動的にジョブスケジュールする処理装置 |
JP2005043959A (ja) * | 2003-07-22 | 2005-02-17 | Toshiba Corp | スケジューリング方法および情報処理システム |
JP2007226587A (ja) * | 2006-02-24 | 2007-09-06 | Mitsubishi Electric Corp | 計算機リソース動的制御装置、計算機リソース動的制御システム及び計算機リソース動的制御方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0403229A1 (en) * | 1989-06-13 | 1990-12-19 | Digital Equipment Corporation | Method and apparatus for scheduling tasks in repeated iterations in a digital data processing system having multiple processors |
JP2520544B2 (ja) * | 1991-09-26 | 1996-07-31 | インターナショナル・ビジネス・マシーンズ・コーポレイション | タスクのオ―バ―ラン状態を監視する方法及びタスク実行サイクルのオ―バ―ランを検出する装置 |
JP3057934B2 (ja) * | 1992-10-30 | 2000-07-04 | 日本電気株式会社 | 共有バス調停機構 |
US6564274B1 (en) * | 1999-12-17 | 2003-05-13 | Omnicluster Technologies, Inc. | Modular architecture for small computer networks |
JP2002073354A (ja) | 2000-08-29 | 2002-03-12 | Ricoh Co Ltd | タスク制御装置とタスク制御方法 |
EP1390848B1 (en) * | 2001-05-14 | 2005-11-02 | Telefonaktiebolaget LM Ericsson (publ) | Task supervision |
US8195922B2 (en) * | 2005-03-18 | 2012-06-05 | Marvell World Trade, Ltd. | System for dynamically allocating processing time to multiple threads |
JP4580845B2 (ja) * | 2005-08-24 | 2010-11-17 | パナソニック株式会社 | タスク実行装置 |
-
2011
- 2011-01-21 WO PCT/JP2011/000325 patent/WO2012001835A1/ja active Application Filing
- 2011-01-21 JP JP2012522419A patent/JP5653431B2/ja active Active
-
2012
- 2012-12-18 US US13/718,670 patent/US9170841B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09231181A (ja) * | 1996-02-28 | 1997-09-05 | Mitsubishi Electric Corp | 並列計算機における動的負荷分散方法 |
JP2000112773A (ja) * | 1998-10-01 | 2000-04-21 | Okinawa Nippon Denki Software Kk | 動的にジョブスケジュールする処理装置 |
JP2005043959A (ja) * | 2003-07-22 | 2005-02-17 | Toshiba Corp | スケジューリング方法および情報処理システム |
JP2007226587A (ja) * | 2006-02-24 | 2007-09-06 | Mitsubishi Electric Corp | 計算機リソース動的制御装置、計算機リソース動的制御システム及び計算機リソース動的制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10838765B2 (en) | 2017-04-28 | 2020-11-17 | Samsung Electronics Co., Ltd. | Task execution method for voice input and electronic device supporting the same |
Also Published As
Publication number | Publication date |
---|---|
US20130104137A1 (en) | 2013-04-25 |
WO2012001835A1 (ja) | 2012-01-05 |
JPWO2012001835A1 (ja) | 2013-08-22 |
US9170841B2 (en) | 2015-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5653431B2 (ja) | マルチプロセッサシステム | |
TWI298458B (en) | Multithreaded processor, computing system with thread livelock units and method for arbitrating livelock priority requests | |
KR102553932B1 (ko) | 컴퓨터 이미징 파이프라인 | |
US20220156084A1 (en) | Processor architecture with micro-threading control by hardware-accelerated kernel thread | |
JP5169731B2 (ja) | マルチプロセッサシステムlsi | |
CN102414672A (zh) | 可编程异常处理等待时间 | |
WO2010067492A1 (ja) | マルチプロセッサシステム及びその排他制御の調停方法 | |
US20230127112A1 (en) | Sub-idle thread priority class | |
JP4829038B2 (ja) | マルチプロセッサシステム | |
US11061724B2 (en) | Programmable hardware scheduler for digital processing systems | |
US11113101B2 (en) | Method and apparatus for scheduling arbitration among a plurality of service requestors | |
WO2004046926A1 (ja) | イベント通知方法、デバイス及びプロセッサシステム | |
JP4825257B2 (ja) | プロセッサ | |
Thebe et al. | Scheduling restartable jobs with short test runs | |
JP4196982B2 (ja) | プロセッサ及びプログラム実行方法 | |
JP4295792B2 (ja) | プロセッサ及びプログラム実行方法 | |
JP2010113414A (ja) | マルチコアシステム、スレッドスケジューリング方法、プログラム、記憶媒体 | |
CN116795490A (zh) | 一种vCPU调度方法、装置、设备及存储介质 | |
JP5772040B2 (ja) | データ転送システム,データ転送スケジューリングプログラム | |
JP5494925B2 (ja) | 半導体集積回路、情報処理装置およびプロセッサ性能保証方法 | |
JP2006099782A (ja) | プロセッサ | |
JP2010191522A (ja) | プログラム検査方法 | |
JP2001290664A (ja) | マルチタスク制御プロセッサシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131202 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141007 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20141008 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141017 |
|
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: 20141111 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141118 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5653431 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |