JP2009069921A - マルチプロセッサシステム - Google Patents
マルチプロセッサシステム Download PDFInfo
- Publication number
- JP2009069921A JP2009069921A JP2007234829A JP2007234829A JP2009069921A JP 2009069921 A JP2009069921 A JP 2009069921A JP 2007234829 A JP2007234829 A JP 2007234829A JP 2007234829 A JP2007234829 A JP 2007234829A JP 2009069921 A JP2009069921 A JP 2009069921A
- Authority
- JP
- Japan
- Prior art keywords
- task
- processing
- processor unit
- control
- tasks
- 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.)
- Pending
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/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
-
- 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
-
- 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/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K2217/00—Indexing scheme related to electronic switching or gating, i.e. not by contact-making or -breaking covered by H03K17/00
- H03K2217/0018—Special modifications or use of the back gate voltage of a FET
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Semiconductor Integrated Circuits (AREA)
- Power Sources (AREA)
Abstract
【解決手段】SOI・MOSトランジスタを用いるマルチプロセッサシステムにおいて、複数のタスクに分割された実行プログラムを複数のプロセッサユニット(101)に割り当てるスケジューリング処理において、複数個のプロセッサユニットにタスク割当を行なう。このとき、プログラムの実行時間を小さくするようタスク実行順を決定するプロセスと、スケジューリング時に、実行タスク間に依存性があるとき一のタスクの処理性能に影響を与える他のタスクを実行する際に実行するプロセッサユニットの動作速度を一時的に向上させるようにプロセッサユニットのクロック信号周波数と基板バイアスを制御する電力制御と、を採用する。
【選択図】図1
Description
先ず、本願において開示される発明の代表的な実施の形態について概要を説明する。代表的な実施の形態についての概要説明で括弧を付して参照する図面中の参照符号はそれが付された構成要素の概念に含まれるものを例示するに過ぎない。
〔5〕項4のマルチプロセッサシステムにおいて、前記他のタスクの処理に並行して、前記一のタスクの処理開始に影響を与える別のタスクが処理されるとき、前記コントロールプロセッサユニットは、前記別のタスクの処理終了タイミングが前記他のタスクの処理終了タイミングよりも遅くならない範囲で、前記別のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を大きくし、且つクロック信号の周波数を低くするように、前記制御データを決定する。前記別のタスクの処理は前記他のタスクの処理よりも遅延せずに終了すれば、当該他のタスクの処理を高速化した意味は失われない。したがって、前記別のタスクの処理を他のタスクの処理終了に間に合う範囲で低速にすることによってシステムの低消費電力に寄与する。
実施の形態について更に詳述する。
図1には本発明に係るマルチプロセッサシステム(CMP)が例示される。同図に示されるCMP100は、特に制限されないが、公知の相補型SOI・MOS集積回路製造技術によって単結晶シリコンのような1個の半導体基板に形成され、所謂SoCとして構成される。
基板バイアス電圧印加に対する、トランジスタの駆動電流特性を見ることで、その効果を説明する。
スケジューラの動作フローを説明する。スケジューラは分割された複数のタスク群をPU101の処理状況により、全体のタスク実行時間がなるべく小さくなるよう、タスクをPU101に割り当てる。入力タスクは、ユーザが明示的に分割、定義しても良いし、後述するようなコンパイラが機械的にサブルーチンやループ等のプログラム構造を利用して分割、定義しても良い。なお、ここで言うタスクの単位粒度は、ある機能を実現するプログラム内の分割された部分プログラム単位でも良いし、また複数の機能を実現するための複数のプログラム群のうちの一プログラムとしても良い。なお、タスクという用語は、スレッド、プロセスと呼ばれることもある。
スケジューラが入力するタスク群の関係は、予めユーザまたはツール等によって定義をしておく。図5にタスク間の依存関係を示したタスク依存テーブル(スケジューリングテーブル)を示す。スケジューリングテーブルは、タスク毎に、タスク番号、依存タスク番号、処理時間、ターゲットPU、タスク間データ共有量、の項目(フィールド)を持つ。各項目を説明すると、タスク番号は、あるプログラムを実行する際の各タスクの固有番号(ID)であり、タスクを一意に指定できるような番号付けをする。なお、スケジューラ内部で扱うタスク番号はスケジューラ内部で自動生成するため、必ずしもスケジューリングテーブル内で扱うタスク番号と一致するとは限らない。
基板バイアス制御を利用したタスクスケジューリングにおける電力制御手法を説明する。第1の制御手法として、スケジューリングテーブルで定義された優先度を利用する方法がある。ユーザまたはコンパイラ等のツールにより設定された優先度で、予め定められた一定以上の優先度のタスクを処理する際に、当該タスクを実行するPU101の基板バイアス制御(順方向バイアス印加)を行うことで閾値電圧を下げ(閾値電圧であるゲート・ソース間電圧を小さくする)、PU101の速度を高めて処理することで全体の処理時間を短縮する。また、優先度が一定以下の低いタスクに対しては、当該タスクを実行するPU101に対して逆方向の基板バイアス制御を行うことで閾値電圧を上げ(閾値電圧であるゲート・ソース間電圧を大きくする)、PU101の速度を低減して処理を行うことで、全体の処理時間に対する処理時間の影響を抑えつつ電力消費を削減できる。例えば、図5のスケジューリングテーブルで定義されたようなタスク群を実行する際に、優先度が5以上のタスクを実行するPU101には順方向基板バイアス制御を適用する。
図7にスケジューラの動作フローを示す。初めにスケジューラは、図5で説明したようなスケジューリングテーブル(SCTBL)234を参照し、その時点で実行可能となっているタスク(レディタスク)を検出する(220)。レディタスクとは、あるタスクの実行が終了した結果、またはスケジューラが起動した状態で、データ依存や制御依存が解消され実行可能状態となっているタスクをさす。なお、プログラム開始時は初期状態で実行可能であるタスクが選択される。当該タスクのデータを後続の複数のタスクが利用するといったケースなど、複数のタスクがレディタスクとなりうる。検出の結果、レディタスクが存在しない場合は、タスクスケジューリングステップは踏まずに、その時点でアイドル状態となっているプロセッサをチェックする(232)。アイドル状態か、否かは、各PU101別に用意されるタスクキュー(タスクキューイングテーブル)にタスクが登録されているかをチェックすることで実現される。もし、タスクキュー内のすべてのタスク実行が当該PUで終了し、プロセッサがアイドル状態であれば、当該PUの電源を遮断する、基板バイアス制御(逆方向バイアス)を適用する、等の電力制御を実施し(233)、アイドルPUの電力を削減する。その後、終了タスクの検知を繰り返す。
図8にはタスクマネージャの動作フローが例示される。各PUではタスクキューのエントリに従ってタスク処理を行うためのタスクマネージャが実行される。タスクマネージャは、以下の手順で動作する。まず、図9に示すようなタスクキューからエントリをチェックし、タスクキューに割り当て済みタスク、つまりステータスが“Assigned”なタスクがあるかをチェックする(240)。タスクキューはFIFO(First In First Out)であり、割り当てられた順でタスクが取り出され(241)、エントリ内の電力制御モードを読み、制御レジスタCRに値をセット、またはコントロールプロセッサCTLPに電力制御モードの通知を行う(242)。次に、タスク実行を開始し、エントリのステータスを実行中であることを示す“Running”に変更する(243)。当該タスクの終了を待ち(244)、終了が検出された場合、当該タスクのキューエントリを削除する(245)。そして、再度割り当て済みタスクの検出を実行する(240)。なお、各タスクの末尾にはスケジューラへ処理を移行する、終了処理コードがコンパイル時に埋め込まれている。
スケジューラの構成を説明する。スケジューラの実行形態は様々な構成をとり得る。図10〜図13に実行形態の一例を示す。図10では、スケジューラ300は一つのPU(PU_0)101のOS上で動作し、またタスク実行を行うタスクマネージャ301は、各PUのOS上で動作する。PU(PU_0〜PU_3)101毎のタスクキューTQ_0〜TQ_3とスケジューリングテーブルSCTBLはCSM104に配置される。
続いて、コンパイラによるプログラムの自動タスク分割と並列性解析、並びにタスクテーブル生成の手順を説明する。Cやフォートラン(Fortran)等の高級言語で記述された逐次構造の入力プログラム例を図14に示す。プログラムはまず、当該プログラム構造を解析することで、繰り返しブロック(RB:Repetition Block)、サブルーチン(SB:Sub Routine)、擬似代入文ブロック(BPA:Block of Pseudo Assignment statements)の3種類の粒度が大きなタスク(以下、マクロタスクMTと呼ぶ)に分割、生成する。RBはループブロックで各階層での最も外側のループであり、BPAはスケジューリングオーバーヘッドあるいは並列性を考慮し、代入文からなる複数の基本ブロックを融合あるいは分割したブロックである。
続いて、分割生成された当該マクロタスク間の制御フロー及びデータ依存性を解析し、マクロタスクMTの実行順序関係を抽出する。入力プログラムは逐次的に記述されているため、通常のコンパイラによる実行コードは、当該プログラムの構造と同様に逐次的な順序で実行されるが、マクロタスクMT間で見ると必ずしも記述された順序で実行する必要がないことが多い。つまり、マクロタスクMT間において制御またはデータ参照の依存性がない場合、特にマルチプロセッサシステムにおいては、複数のPU101に複数のマクロタスクMTを配置して同時にまたは順序を変更して、全体の実行時間が短くなるようスケジューリングすることが重要となる。このようなスケジューリングを行うためには、マクロタスクMT間の並列性を解析する必要がある。そこでこれに向けた準備として、データ依存・制御フロー解析処理により、マクロタスクMT間の実行順序関係を抽出する。
続いてマクロタスクMT内の中粒度レベルの並列性解析として、ループレベル並列化を行う。ループレベル並列化では、ループの繰り返し(イタレーション)単位間のデータ依存性を解析して、各イタレーションが独立に処理できるかを判断し、可能な場合は各イタレーションを複数のPU101に割り当てて並列処理を行う。また、単一のループを複数のループに分割し並列性を高めたり、データのコピーや配列変数の拡張によりループ間のデータ依存性を削除することで並列したり、また複数のループを単一のループに融合することでループ制御に必要なオーバーヘッドを軽減したり、といった様々な手法によりループの並列化を実現する。
次に生成されたマクロタスクMTを各PU101で実行した際に必要となる処理サイクルを、予め付加されたディレクティブ情報より求める。なお、CPUの処理サイクルに関しては、通常並列化コンパイラ内のCPU命令コストテーブルを参照することによってもとめる。CPU処理コストの見積もり方法としては、例えばCPUなどに関しては乗算や加算など命令レベルで必要とするサイクル数をテーブルに保持しておき、当該テーブルを参照することでマクロタスクMTを当該PU101で実行する際の逐次処理サイクル数を見積もることができる。
コンパイラはマクロタスクMTの処理コストが決定した後、データ依存・制御フロー解析処理で抽出したマクロタスクMT間の制御フローとデータ依存性を同時に解析結果から、マクロタスクMT間の並列性、つまり各マクロタスクMTの実行を最も早く実行してよい条件(最早実行条件)を決定する。この最早実行条件をグラフで可視的に示したものがマクロタスクグラフ(MTG)である。図3の入力プログラムを解析し生成されたMTGを、図15に示す。本グラフ中の各ノードはマクロタスクMTを示し、ノード間の実線はマクロタスク間のデータ依存関係を表す。例えば、マクロタスクMT1.1からマクロタスクMT1.2(502)及びマクロタスクMT1.3(503)に対して実線が伸びているが、これはマクロタスクMT1.2及びマクロタスクMT1。3がマクロタスクMT1.1を実行した結果生じたデータを入力データとして用い処理を実行しているという依存関係があることを示している。そのため、実行順序として、マクロタスクMT1.2及びマクロタスクMT1.3はマクロタスクMT1.1タスク終了後、実行できることを示す。
101:プロセッサユニット
102:基板電圧制御回路
103:制御プロセッサ
104:共有メモリ
105:インターコネクションネットワーク
106:接地電源
107:電源
108:nMOS基板電源
109:pMOS基板電源
110:基板電圧制御線
111:制御レジスタ
120〜123、125〜128:タスク
234:スケジューリングテーブル
235:電力制御情報
236:手順
30:スケジューラ
301:タスクマネージャ
Claims (13)
- 並列動作可能な複数のプロセッサユニットと、基板バイアス制御回路と、コントロールプロセッサとを有し、
前記プロセッサユニットは、他のMOSトランジスタから電気的に分離された背面ゲート電極を備えたシリコン・オン・インシュレータ構造のSOI・MOSトランジスタから成る内部回路を備え、クロック信号に同期動作され、
前記基板バイアス回路は前記内部回路のSOI・MOSトランジスタの背面電極に基板バイアス電圧を出力し、
前記コントロールプロセッサユニットは、タスク間の依存性を考慮して前記複数のプロセッサユニットに複数のタスクを並列的に処理させるタスクスケジューリングを行なうと共に、前記基板バイアス電圧と前記クロック信号の周波数を前記プロセッサユニット毎に制御するための制御データを生成し、前記タスクスケジューリングに際して、一のタスクの処理開始に影響を与える他のタスクの処理時間を短縮するように前記制御データを決定する、マルチプロセッサシステム。 - タスク間の依存関係を規定する依存関係テーブルを格納するメモリを有し、
前記コントロールプロセッサユニットは、前記依存関係テーブルを参照して、タスク間の依存性を把握する、請求項1記載のマルチプロセッサシステム。 - 前記コントロールプロセッサユニットは、前記他のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を小さくし、且つクロック信号の周波数を高くするように、前記制御データを決定する、請求項1記載のマルチプロセッサシステム。
- 前記他のタスクの処理の完了を待って、前記一のタスクが処理されるとき、前記コントロールプロセッサユニットは、前記他のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を小さくし、且つクロック信号の周波数を高くするように、前記制御データを決定する、請求項1記載のマルチプロセッサシステム。
- 前記他のタスクの処理に並行して前記一のタスクの処理開始に影響を与える別のタスクが処理されるとき、前記コントロールプロセッサユニットは、前記別のタスクの処理終了タイミングが前記他のタスクの処理終了タイミングよりも遅くならない範囲で、前記別のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を大きくし、且つクロック信号の周波数を低くするように、前記制御データを決定する、請求項4記載のマルチプロセッサシステム。
- 並列動作可能な複数のプロセッサユニットと、基板バイアス制御回路とを有し、
前記プロセッサユニットは、他のMOSトランジスタから電気的に分離された背面ゲート電極を備えたシリコン・オン・インシュレータ構造のSOI・MOSトランジスタから成る内部回路を備え、クロック信号に同期動作され、
前記基板バイアス回路は前記内部回路のSOI・MOSトランジスタの背面電極に基板バイアス電圧を出力し、
一のプロセッサユニットはタスク間の依存性を考慮して前記複数のプロセッサユニットに複数のタスクを並列的に処理させるタスクスケジューリングを行ない、
夫々の前記プロセッサユニットは前記タスクスケジューリングの結果を参照して自らが実行すべきタスクの処理を制御するタスク実行管理を行ない、
前記一のプロセッサユニットは前記タスクスケジューリングに際して、前記基板バイアス電圧と前記クロック信号の周波数をタスク単位で制御可能な制御データを生成し、一のタスクの処理開始に影響を与える他のタスクの処理時間を短縮するように前記制御データを決定する、マルチプロセッサシステム。 - 前記一のプロセッサユニットは前記タスクスケジューリングにおいて、スケジューリングされたタスクとこれに対応する制御データとをプロセッサユニット毎のキューイングテーブルに登録し、
前記プロセッサユニットはタスク実行管理において対応するキューイングテーブルを参照して自ら処理すべきタスクと制御情報を取得する、請求項6記載のマルチプロセッサシステム。 - 前記一のプロセッサユニットは前記タスクスケジューリングにおいて、前記他のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を小さくし、クロック信号の周波数を高くするように、前記制御データを決定する、請求項7記載のマルチプロセッサシステム。
- 前記他のタスクの処理の完了を待って、前記一のタスクが処理されるとき、前記一のプロセッサユニットは前記タスクスケジューリングにおいて、前記他のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を小さくし、且つクロック信号の周波数を高くするように、前記制御データを決定する、請求項7記載のマルチプロセッサシステム。
- 前記他のタスクの処理に並行して、前記一のタスクの処理開始に影響を与える別のタスクが処理されるとき、前記一のプロセッサユニットは前記タスクスケジューリングにおいて、前記別のタスクの処理終了タイミングが前記他のタスクの処理終了タイミングよりも遅くならない範囲で、前記別のタスクを処理するプロセッサユニットの前記内部回路に対して、SOI・MOSトランジスタの閾値電圧を大きくし、且つクロック信号の周波数を低くするように、前記制御データを決定する、請求項9記載のマルチプロセッサシステム。
- 前記シリコン・オン・インシュレータ構造は完全空乏型である、請求項1記載のデータ処理システム。
- 前記SOI・MOSトランジスタは、半導体基板上に、埋め込み酸化膜を介して形成される第1半導体層と、前記第1半導体層に形成され、前記第1半導体層の厚さを有するソース領域及びドレイン領域と、前記ソース領域及びドレイン領域に挟まれるように形成されたチャネル領域と、該チャネル領域の第1主面側に形成された第1ゲートと、前記埋め込み酸化膜の下面に接して形成された導電層からなる第2ゲートとを有し、前記第2ゲートが前記背面ゲート電極である、請求項11記載のマルチプロセッサシステム。
- 1個の半導体基板の上に形成された、請求項12記載のマルチプロセッサシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007234829A JP2009069921A (ja) | 2007-09-11 | 2007-09-11 | マルチプロセッサシステム |
US12/172,919 US8112754B2 (en) | 2007-09-11 | 2008-07-14 | Controlling body-bias voltage and clock frequency in a multiprocessor system for processing tasks |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007234829A JP2009069921A (ja) | 2007-09-11 | 2007-09-11 | マルチプロセッサシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009069921A true JP2009069921A (ja) | 2009-04-02 |
Family
ID=40433237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007234829A Pending JP2009069921A (ja) | 2007-09-11 | 2007-09-11 | マルチプロセッサシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8112754B2 (ja) |
JP (1) | JP2009069921A (ja) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011187045A (ja) * | 2010-02-09 | 2011-09-22 | Canon Inc | データ処理装置及びその制御方法、プログラム |
WO2011161884A1 (ja) * | 2010-06-25 | 2011-12-29 | パナソニック株式会社 | 集積回路、コンピュータシステム、制御方法 |
KR20120017295A (ko) * | 2010-08-18 | 2012-02-28 | 삼성전자주식회사 | 작업 스케쥴링 기능을 구비한 작업 처리장치, 스케쥴링 활성화 제어장치 및 대칭형 멀티프로세싱 환경에서의 작업 스케쥴링 방법 |
JP2012048545A (ja) * | 2010-08-27 | 2012-03-08 | Lenovo Singapore Pte Ltd | 特定のプロセスを短時間で処理する方法およびコンピュータ |
JP2013214331A (ja) * | 2013-07-22 | 2013-10-17 | Panasonic Corp | コンパイラ |
JP2014219230A (ja) * | 2013-05-02 | 2014-11-20 | 三菱電機株式会社 | 並列信号処理装置 |
JP2015031967A (ja) * | 2013-07-31 | 2015-02-16 | 三菱電機株式会社 | 設定処理実行装置及び設定処理実行方法及びプログラム |
JP2015191282A (ja) * | 2014-03-27 | 2015-11-02 | 富士通株式会社 | ジョブスケジュールプログラム、ジョブスケジュール方法、及びジョブスケジュール装置 |
US9563465B2 (en) | 2011-01-07 | 2017-02-07 | Fujitsu Limited | Multi-task scheduling method for assigning threads based on time slices to multi-core processors and multi-core processor system therefor |
JP2017062666A (ja) * | 2015-09-25 | 2017-03-30 | 富士ゼロックス株式会社 | 情報処理装置および画像形成装置 |
KR101775029B1 (ko) * | 2016-12-21 | 2017-09-05 | 삼성전자주식회사 | 어플리케이션을 효율적으로 처리하는 스케쥴링 시스템 및 스케쥴링 방법 |
WO2017217084A1 (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
WO2019188181A1 (ja) * | 2018-03-30 | 2019-10-03 | 株式会社デンソー | スケジューリング方法、スケジューリング装置 |
JP2020113194A (ja) * | 2019-01-16 | 2020-07-27 | トヨタ自動車株式会社 | 情報処理装置 |
US11709697B2 (en) | 2019-09-04 | 2023-07-25 | Toyota Jidosha Kabushiki Kaisha | Vehicle control device, vehicle control method, and recording medium storing vehicle control program |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007264863A (ja) * | 2006-03-28 | 2007-10-11 | Hitachi Ltd | 業務使用解析装置 |
JP5195408B2 (ja) * | 2008-12-25 | 2013-05-08 | 富士通セミコンダクター株式会社 | マルチコアシステム |
WO2010095358A1 (ja) * | 2009-02-18 | 2010-08-26 | 日本電気株式会社 | タスク割当装置、タスク割当方法、及び、タスク割当プログラムが格納された記憶媒体 |
EP2282264A1 (en) * | 2009-07-24 | 2011-02-09 | ProximusDA GmbH | Scheduling and communication in computing systems |
US8776066B2 (en) * | 2009-11-30 | 2014-07-08 | International Business Machines Corporation | Managing task execution on accelerators |
JP2011180894A (ja) * | 2010-03-02 | 2011-09-15 | Fujitsu Ltd | ジョブスケジューリングプログラム、ジョブスケジューリング装置、及びジョブスケジューリング方法 |
US20110276966A1 (en) * | 2010-05-06 | 2011-11-10 | Arm Limited | Managing task dependency within a data processing system |
US8560876B2 (en) * | 2010-07-06 | 2013-10-15 | Sap Ag | Clock acceleration of CPU core based on scanned result of task for parallel execution controlling key word |
KR20120017294A (ko) * | 2010-08-18 | 2012-02-28 | 삼성전자주식회사 | 어플리케이션을 효율적으로 처리하는 스케쥴링 시스템 및 스케쥴링 방법 |
US8539494B2 (en) * | 2011-01-31 | 2013-09-17 | Oracle International Corporation | Method and system for scheduling threads |
US9218177B2 (en) * | 2011-03-25 | 2015-12-22 | Microsoft Technology Licensing, Llc | Techniques to optimize upgrade tasks |
US9195501B2 (en) * | 2011-07-12 | 2015-11-24 | Qualcomm Incorporated | Instruction culling in graphics processing unit |
US9411641B2 (en) * | 2012-10-04 | 2016-08-09 | Lawrence J. Dickson | Method and apparatus implemented in processors for real-time scheduling and task organization based on response time order of magnitude |
US9442559B2 (en) | 2013-03-14 | 2016-09-13 | Intel Corporation | Exploiting process variation in a multicore processor |
US9286106B1 (en) * | 2013-04-16 | 2016-03-15 | Ca, Inc. | Scheduling periodic tasks with dependencies and determining improper loop dependencies between tasks placed in a waiting tasks set and in a unfinished dependent tasks set |
JP6018022B2 (ja) * | 2013-06-14 | 2016-11-02 | 株式会社デンソー | 並列化コンパイル方法、並列化コンパイラ、並列化コンパイル装置、及び、車載装置 |
US9477523B1 (en) * | 2013-06-25 | 2016-10-25 | Amazon Technologies, Inc. | Scheduling data access jobs based on job priority and predicted execution time using historical execution data |
FR3009149A1 (fr) * | 2013-07-24 | 2015-01-30 | St Microelectronics Sa | Element a retard variable |
US9921870B2 (en) * | 2014-09-25 | 2018-03-20 | Oracle International Corporation | System and method for supporting a scalable thread pool in a distributed data grid |
US9811390B1 (en) * | 2015-03-30 | 2017-11-07 | EMC IP Holding Company LLC | Consolidating tasks into a composite request |
DE102016218210A1 (de) * | 2015-09-30 | 2017-03-30 | Robert Bosch Engineering and Business Solutions Ltd. | Ein dynamischer Aufgabenplaner in einer Mehrkern-Elektroniksteuereinheit |
US9798583B2 (en) | 2015-12-04 | 2017-10-24 | Microsoft Technology Licensing, Llc | Onboarding of a service based on automated supervision of task completion |
US9891982B2 (en) | 2015-12-04 | 2018-02-13 | Microsoft Technology Licensing, Llc | Error handling during onboarding of a service |
US10073718B2 (en) | 2016-01-15 | 2018-09-11 | Intel Corporation | Systems, methods and devices for determining work placement on processor cores |
US11361800B2 (en) | 2017-08-04 | 2022-06-14 | RACYICS GmbH | Method for characterization of standard cells with adaptive body biasing |
US10915356B2 (en) * | 2018-08-30 | 2021-02-09 | Intel Corporation | Technology to augment thread scheduling with temporal characteristics |
US20230108234A1 (en) * | 2021-09-28 | 2023-04-06 | Advanced Micro Devices, Inc. | Synchronous labeling of operational state for workloads |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08274620A (ja) * | 1995-03-29 | 1996-10-18 | Hitachi Ltd | 半導体集積回路装置及びマイクロコンピュータ |
JP2004199139A (ja) * | 2002-12-16 | 2004-07-15 | Matsushita Electric Ind Co Ltd | プロセッサシステム、命令列最適化装置、および命令列最適化プログラム |
JP2006293768A (ja) * | 2005-04-12 | 2006-10-26 | Univ Waseda | マルチプロセッサシステム及びマルチグレイン並列化コンパイラ |
JP2007201236A (ja) * | 2006-01-27 | 2007-08-09 | Renesas Technology Corp | 半導体集積回路 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3814385B2 (ja) * | 1997-10-14 | 2006-08-30 | 株式会社ルネサステクノロジ | 半導体集積回路装置 |
US6484265B2 (en) * | 1998-12-30 | 2002-11-19 | Intel Corporation | Software control of transistor body bias in controlling chip parameters |
US6744301B1 (en) * | 2000-11-07 | 2004-06-01 | Intel Corporation | System using body-biased sleep transistors to reduce leakage power while minimizing performance penalties and noise |
JP2002304232A (ja) | 2001-04-03 | 2002-10-18 | Sony Corp | 演算処理システム及び演算処理制御方法、並びに記憶媒体 |
US7493149B1 (en) * | 2002-03-26 | 2009-02-17 | National Semiconductor Corporation | Method and system for minimizing power consumption in mobile devices using cooperative adaptive voltage and threshold scaling |
US7194385B2 (en) * | 2002-11-12 | 2007-03-20 | Arm Limited | Performance level setting of a data processing system |
US7120804B2 (en) * | 2002-12-23 | 2006-10-10 | Intel Corporation | Method and apparatus for reducing power consumption through dynamic control of supply voltage and body bias including maintaining a substantially constant operating frequency |
US7106128B2 (en) * | 2004-11-03 | 2006-09-12 | Intel Corporation | Processor apparatus with body bias circuitry to delay thermal throttling |
JP2006237388A (ja) * | 2005-02-25 | 2006-09-07 | Matsushita Electric Ind Co Ltd | 半導体集積回路及び半導体集積回路の制御方法及び信号伝送回路 |
JP4800700B2 (ja) | 2005-08-01 | 2011-10-26 | ルネサスエレクトロニクス株式会社 | 半導体装置およびそれを用いた半導体集積回路 |
US20070266385A1 (en) * | 2006-05-11 | 2007-11-15 | Arm Limited | Performance level setting in a data processing system |
US8234652B2 (en) * | 2007-08-28 | 2012-07-31 | International Business Machines Corporation | Performing setup operations for receiving different amounts of data while processors are performing message passing interface tasks |
-
2007
- 2007-09-11 JP JP2007234829A patent/JP2009069921A/ja active Pending
-
2008
- 2008-07-14 US US12/172,919 patent/US8112754B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08274620A (ja) * | 1995-03-29 | 1996-10-18 | Hitachi Ltd | 半導体集積回路装置及びマイクロコンピュータ |
JP2004199139A (ja) * | 2002-12-16 | 2004-07-15 | Matsushita Electric Ind Co Ltd | プロセッサシステム、命令列最適化装置、および命令列最適化プログラム |
JP2006293768A (ja) * | 2005-04-12 | 2006-10-26 | Univ Waseda | マルチプロセッサシステム及びマルチグレイン並列化コンパイラ |
JP2007201236A (ja) * | 2006-01-27 | 2007-08-09 | Renesas Technology Corp | 半導体集積回路 |
Non-Patent Citations (2)
Title |
---|
CSNG200301461011; 石坂 一久: '共有メモリマルチプロセッサ上でのキャッシュ最適化を考慮した粗粒度タスク並列処理' 情報処理学会論文誌 第43巻,第4号, 20020415, p.958-970, 社団法人情報処理学会 * |
JPN6011040719; 石坂 一久: '共有メモリマルチプロセッサ上でのキャッシュ最適化を考慮した粗粒度タスク並列処理' 情報処理学会論文誌 第43巻,第4号, 20020415, p.958-970, 社団法人情報処理学会 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011187045A (ja) * | 2010-02-09 | 2011-09-22 | Canon Inc | データ処理装置及びその制御方法、プログラム |
JP5853216B2 (ja) * | 2010-06-25 | 2016-02-09 | パナソニックIpマネジメント株式会社 | 集積回路、コンピュータシステム、制御方法 |
WO2011161884A1 (ja) * | 2010-06-25 | 2011-12-29 | パナソニック株式会社 | 集積回路、コンピュータシステム、制御方法 |
US8918664B2 (en) | 2010-06-25 | 2014-12-23 | Panasonic Corporation | Integrated circuit, computer system, and control method, including power saving control to reduce power consumed by execution of a loop |
KR20120017295A (ko) * | 2010-08-18 | 2012-02-28 | 삼성전자주식회사 | 작업 스케쥴링 기능을 구비한 작업 처리장치, 스케쥴링 활성화 제어장치 및 대칭형 멀티프로세싱 환경에서의 작업 스케쥴링 방법 |
KR101689736B1 (ko) | 2010-08-18 | 2016-12-27 | 삼성전자주식회사 | 작업 스케쥴링 기능을 구비한 작업 처리장치, 스케쥴링 활성화 제어장치 및 대칭형 멀티프로세싱 환경에서의 작업 스케쥴링 방법 |
JP2012048545A (ja) * | 2010-08-27 | 2012-03-08 | Lenovo Singapore Pte Ltd | 特定のプロセスを短時間で処理する方法およびコンピュータ |
US9563465B2 (en) | 2011-01-07 | 2017-02-07 | Fujitsu Limited | Multi-task scheduling method for assigning threads based on time slices to multi-core processors and multi-core processor system therefor |
JP2014219230A (ja) * | 2013-05-02 | 2014-11-20 | 三菱電機株式会社 | 並列信号処理装置 |
JP2013214331A (ja) * | 2013-07-22 | 2013-10-17 | Panasonic Corp | コンパイラ |
JP2015031967A (ja) * | 2013-07-31 | 2015-02-16 | 三菱電機株式会社 | 設定処理実行装置及び設定処理実行方法及びプログラム |
JP2015191282A (ja) * | 2014-03-27 | 2015-11-02 | 富士通株式会社 | ジョブスケジュールプログラム、ジョブスケジュール方法、及びジョブスケジュール装置 |
JP2017062666A (ja) * | 2015-09-25 | 2017-03-30 | 富士ゼロックス株式会社 | 情報処理装置および画像形成装置 |
WO2017217084A1 (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
JP2017224089A (ja) * | 2016-06-14 | 2017-12-21 | 株式会社デンソー | データ処理システム |
KR101775029B1 (ko) * | 2016-12-21 | 2017-09-05 | 삼성전자주식회사 | 어플리케이션을 효율적으로 처리하는 스케쥴링 시스템 및 스케쥴링 방법 |
WO2019188181A1 (ja) * | 2018-03-30 | 2019-10-03 | 株式会社デンソー | スケジューリング方法、スケジューリング装置 |
JP2020113194A (ja) * | 2019-01-16 | 2020-07-27 | トヨタ自動車株式会社 | 情報処理装置 |
JP7172625B2 (ja) | 2019-01-16 | 2022-11-16 | トヨタ自動車株式会社 | 情報処理装置 |
US11526378B2 (en) | 2019-01-16 | 2022-12-13 | Toyota Jidosha Kabushiki Kaisha | Information processing device and information processing method |
US11709697B2 (en) | 2019-09-04 | 2023-07-25 | Toyota Jidosha Kabushiki Kaisha | Vehicle control device, vehicle control method, and recording medium storing vehicle control program |
Also Published As
Publication number | Publication date |
---|---|
US20090070772A1 (en) | 2009-03-12 |
US8112754B2 (en) | 2012-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2009069921A (ja) | マルチプロセッサシステム | |
CN1322397C (zh) | 处理器系统、指令序列优化装置和指令序列优化程序 | |
JP4082706B2 (ja) | マルチプロセッサシステム及びマルチグレイン並列化コンパイラ | |
US8051412B2 (en) | Global compiler for controlling heterogeneous multiprocessor | |
KR101655137B1 (ko) | 칩 멀티프로세서에서 코어-수준 동적 전압과 주파수 스케일링 | |
JP4936517B2 (ja) | ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ | |
US7571342B2 (en) | Processor system, instruction sequence optimization device, and instruction sequence optimization program | |
US20180260018A1 (en) | Operating point controller for circuit regions | |
JP2009146243A (ja) | 基板バイアス制御を活用する電力性能最適化コンパイラ及びプロセッサシステム | |
KR20170024898A (ko) | 사용자 어플리케이션의 특성에 따른 연산 디바이스 동적 제어 기법 | |
JP2007305148A (ja) | マルチプロセッサシステム | |
JP2004199139A (ja) | プロセッサシステム、命令列最適化装置、および命令列最適化プログラム | |
Lotfi et al. | Aging-aware compilation for GP-GPUs | |
JP2011129147A (ja) | プロセッサシステム、命令列最適化装置、および命令列最適化プログラム | |
Swaminathan et al. | Thermal-aware application scheduling on device-heterogeneous embedded architectures | |
Kühn et al. | MuCCRA4-BB: A fine-grained body biasing capable DRP | |
Medeiros et al. | Transparent aging-aware thread throttling | |
Multanen | Hardware optimizations for low-power processors | |
Takase et al. | Partitioning and allocation of scratch-pad memory for energy minimization of priority-based preemptive multi-task systems | |
Xie et al. | Utilizing Power Management and Timing Slack for Low Power in High-Level Synthesis | |
Milutinovic et al. | Dynamic voltage and frequency scaling and adaptive body biasing for active and leakage power reduction in MPSoC: A literature overview | |
Cai | Power/Performance Modeling and Optimization: Using and Characterizing Machine Learning Applications | |
Shikano et al. | Power-aware compiler controllable chip multiprocessor | |
Chen et al. | Low Power Design Methodologies for Digital Signal Processors | |
Pal et al. | Leakage Power Minimization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100303 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110727 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110804 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110922 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120516 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120713 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120830 |