JP2011170619A - マルチスレッド処理装置 - Google Patents

マルチスレッド処理装置 Download PDF

Info

Publication number
JP2011170619A
JP2011170619A JP2010033789A JP2010033789A JP2011170619A JP 2011170619 A JP2011170619 A JP 2011170619A JP 2010033789 A JP2010033789 A JP 2010033789A JP 2010033789 A JP2010033789 A JP 2010033789A JP 2011170619 A JP2011170619 A JP 2011170619A
Authority
JP
Japan
Prior art keywords
thread
operation control
threads
access right
exclusive access
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
Application number
JP2010033789A
Other languages
English (en)
Inventor
Hirohide Yamashiro
啓秀 山城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2010033789A priority Critical patent/JP2011170619A/ja
Publication of JP2011170619A publication Critical patent/JP2011170619A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】処理を確実に実行すると共に、処理効率を向上させることが可能なマルチスレッド処理装置を提供すること。
【解決手段】複数のスレッドがハードウエアを部分的に共有して処理を行なうマルチスレッド処理装置であって、前記複数のスレッドのうちいずれかが作動するように制御する作動制御手段と、前記複数のスレッドのうちいずれかに排他的アクセス権を取得させる排他的アクセス権設定手段と、を備え、前記作動制御手段は、前記複数のスレッドのうち他のスレッドが前記排他的アクセス権を取得していることにより待ち状態となるスレッドから他のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、マルチスレッド処理装置。
【選択図】図5

Description

本発明は、複数のプログラムを独立に実行可能なマルチスレッド処理装置に関し、特に、複数のスレッドがハードウエアを部分的に共有して処理を行なうハードウエア・マルチスレッディング機能を有するマルチスレッド処理装置に関する。
近年、プロセッサの性能向上に伴い、複数の機能を一つのプロセッサにより実現させるための技術が研究・実用化されている。例えば、車両に搭載される車載制御装置の分野では、ある車載機器を制御する制御装置と他の車載機器を制御する制御装置(例えば変速機の制御装置とエンジンの制御装置等)を統合して、コンピュータ・ハードウエアを縮小し、コストや重量の低減を図る動きが見られる。
こうしたハードウエア統合の一手法として、ハードウエア・マルチスレッディングと称されるものが知られている。ハードウエア・マルチスレッディングは、命令の出所や演算結果の格納場所を異にする複数のスレッドが、命令デコーダや演算回路等のハードウエアを共有して処理を行なうものである。ハードウエア・マルチスレッディングにおいては、異なるスレッドが同時に処理を行なうことは困難であるため、各スレッドに帯域を設定する処理(スケジューリング)が行われている。帯域とは、各スレッドがハードウエアを使用可能な時間の割合、すなわち各スレッドの作動割合を意味する。例えば、スレッド数が3(#0〜#2)で帯域が1:1:1であれば、スレッドはコンピュータの内部クロックが1クロック(又は複数クロック)経過する毎に切り替えられる。
ハードウエア・マルチスレッディングでは、一般的に、共有メモリに代表される共有資源にアクセスしているスレッドが、他のスレッドが同じ共有資源にアクセスしないように制御している。このような排他制御は、セマフォ等と称されている。
また、これに関連したプロセス制御装置についての発明が開示されている(例えば、特許文献1参照)。この装置では、プロセスがCPU目標時間までCPUを使い切っているかどうかに基づいて、資源の解放を制御している。
特開2009−211386号公報
ところで、排他制御が行われるハードウエア・マルチスレッディングにおいては、共有資源へのアクセスが競合した場合、後にアクセス要求したスレッドが待ち状態となり、プロセッサの効率が低下するという課題が存在する。
図1は、係る課題を説明するための説明図である。各スレッドは、1クロックずつ作動時間が割り当てられている。図中、「get」は共有資源への排他的アクセス権取得であり、「req」は当該排他的アクセス権取得要求であり、「run」は共有資源への排他的アクセス権を取得した状態における処理であり、「rel」は共有資源への排他的アクセス権解放であり、「wt」は待ち状態を示している。
図示するように、スレッド#0が共有資源への排他的アクセス権を取得している間、共有資源への排他的アクセス権取得要求を行ったスレッド#1が待ち状態となっている。この待ち状態では、いずれのスレッドも処理を行うことができないため、処理効率の低下を招くことになる。
なお、上記特許文献1に記載の装置では、共有資源へのアクセス権の解放を強制的に行う場合があるため、処理が確実に実行されないおそれがある。
本発明はこのような課題を解決するためのものであり、処理を確実に実行すると共に、処理効率を向上させることが可能なマルチスレッド処理装置を提供することを、主たる目的とする。
上記目的を達成するための本発明の一態様は、
複数のスレッドがハードウエアを部分的に共有して処理を行なうマルチスレッド処理装置であって、
前記複数のスレッドのうちいずれかが作動するように制御する作動制御手段と、
前記複数のスレッドのうちいずれかに排他的アクセス権を取得させる排他的アクセス権設定手段と、を備え、
前記作動制御手段は、前記複数のスレッドのうち他のスレッドが前記排他的アクセス権を取得していることにより待ち状態となるスレッドから他のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、
マルチスレッド処理装置である。
この本発明の一態様によれば、複数のスレッドのうち他のスレッドが前記排他的アクセス権を取得していることにより待ち状態となるスレッドから他のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うため、処理を確実に実行すると共に、処理効率を向上させることができる。
本発明の一態様において、
前記作動制御手段は、前記待ち状態となるスレッドから他のスレッドに、当該回の作動時間の全部を譲渡するように作動制御を行うことを特徴とするものとしてもよい。
また、本発明の一態様において、
前記作動制御手段は、前記待ち状態となるスレッドから前記排他的アクセス権を取得しているスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とするものとしてもよい。
また、本発明の一態様において、
前記作動制御手段は、前記待ち状態となるスレッドから他の特定のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とするものとしてもよい。
また、本発明の一態様において、
前記作動制御手段は、前記待ち状態となるスレッドから当該待ち状態となるスレッドを除く前記複数のスレッドから順に選択されたスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とするものとしてもよい。
また、本発明の一態様において、
車両に搭載され、各スレッドが車載機器制御のための命令を実行することを特徴とするものとしてもよい。
本発明によれば、処理を確実に実行すると共に、処理効率を向上させることが可能なマルチスレッド処理装置を提供することができる。
排他制御が行われるハードウエア・マルチスレッディングにおいて、共有資源へのアクセスが競合した場合、後にアクセス要求したスレッドが待ち状態となり、プロセッサの効率が低下するという課題を説明するための説明図である。 本発明の第1実施例に係るマルチスレッド処理装置1のシステム構成例である。 各スレッドが命令を処理するのに先立って、OS等により実行される処理の流れを示すフローチャートである。 各スレッドが命令を処理した後に、OS等により実行される処理の流れを示すフローチャートである。 図3及び図4で示した処理を行う結果として実現される、各スレッドの命令実行状況を示すタイミングチャートである。 スレッド#1がスレッド#2に帯域を譲渡するように予め規定されている場合の、各スレッドの命令実行状況を示すタイミングチャートである。 スレッド#1がスレッド#3に帯域を譲渡するように予め規定されている場合の、各スレッドの命令実行状況を示すタイミングチャートである。 第3実施例における、各スレッドの命令実行状況を示すタイミングチャートである。
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
<第1実施例>
以下、図面を参照し、本発明の第1実施例に係るマルチスレッド処理装置1について説明する。マルチスレッド処理装置1は、例えば車両に搭載され、各スレッドが種々の車載機器制御のための命令を実行する制御装置に、好適に適用される。後述の第2及び第3実施例についても同様である。
車載機器制御の例としては、例えばエンジン制御、ブレーキ制御、パワーステアリング等を制御するステアリング制御、ドアロック等を制御するボデー制御、VSC(Vehicle Stability Control)やVDIM(Vehicle Dynamics Integrated Management)等の車両安定化制御、ACC(Adaptive Cruise Control)等の運転支援制御、ナビゲーション制御等が挙げられる。
[構成]
図2は、本発明の第1実施例に係るマルチスレッド処理装置1のシステム構成例である。マルチスレッド処理装置1は、主要な構成として、ROM(Read Only Memory)10と、PC(プログラムカウンタ)12と、命令Queue14と、汎用レジスタ16と、EXU(演算ユニット)18と、スケジューラ20と、を備える。
ROM10には、マルチスレッド処理装置1の各スレッドが実行する一単位の命令が複数個格納されている。
ここで、スレッドとは、ハードウエアを部分的に共有して処理を行なう仮想的な処理主体をいい、本実施例の場合、PC12、汎用レジスタ16、供給されるユーザ/OSリソース22はスレッド毎に用意されているが、それ以外のROM10、命令Queue14、EXU18、及びデータバス32は各スレッドで共用される。以下の説明では、スレッドが4個設定されるものとし、これらをスレッド#0〜#3と称する。
スレッド#0は、主として、PC12のうちスレッド#0に相当するものに従ってROM10から読み出された命令が命令Queue14に格納され、次いで図示しない命令デコーダによって解読されて汎用レジスタ16のうちスレッド#0に相当するものに格納され、これがEXU18により実行される命令の流れをいう。他のスレッドについても同様である。
なお、ユーザ/OSリソース22は、各スレッドに与えられる固有の演算対象、パラメータ等を含んでいる。
スレッドの切り替えは、図示しないOS(Operating System)の指示に従って、スケジューラ20によって行われる。
スケジューラ20は、内部クロックに応じて作動し、スレッド#0〜#3に対応して設定されているPC12のアドレスを、メモリバスを介してROM10に出力し、ROM10から命令Queue14に命令を順次読み出す。命令Queue14に格納された一連の命令には、スレッド番号が付与されている。
命令Queue14に格納された命令は、図示しない命令デコーダによって解読され、汎用レジスタ16に格納される。汎用レジスタ16は、EXU18の演算結果、データバス32を介して読み出されたデータ等を一時的に記憶する一群のレジスタである。命令デコーダによる解読結果は、例えば、演算の種別、1以上のソースオペランド、結果の格納場所等である。
EXU18は、演算の種類に応じて、汎用レジスタ16に記憶されたデータに演算を施す。演算の内容は、ストア、ロード、加算、乗算、除算、分岐等である。例えばストア命令の場合、EXU18は演算したアドレスを指定してデータバス32を介してRAM30等からデータを読み出す。
また、EXU18は、加算等の演算結果、又は、データバス32を介してRAM30等から読み出したデータを、汎用レジスタ16にライトバックする。
スケジューラ20は、スレッドの切り替えを、例えばOSから与えられた初期配分に基づいて実行開始する。初期配分は、例えばスレッド#0:#1:#2:#3=1:1:1:1のような形式で与えられる。このようなスレッド毎の作動割合(時間配分)は、「帯域」と称される。以下の説明では、スレッドの作動割合を、必要に応じて帯域と表記する。
また、マルチスレッド処理装置1は、排他制御をおこなうための共有レジスタとして、セマフォ用レジスタ40を備える。セマフォ用レジスタ40には、後述するセマフォ使用フラグが格納される。
[処理効率を向上させるための制御]
以下、図1で説明したような課題を解決するための特徴的な制御について説明する。
図3は、各スレッドが命令を処理するのに先立って、OS等により実行される処理の流れを示すフローチャートである。
まず、これから実行される命令(命令Queue14に格納された命令のうち優先順位が最も高い命令)がセマフォ取得要求を含むか否かを判定する(S100)。「命令がセマフォ取得要求を伴う」とは、当該命令がRAM30等の共有資源への排他的アクセス権を取得するための要求を含む(或いは当該要求のみである)ことを意味する。
これから実行される命令がセマフォ取得要求を含まない場合は、何も処理を行わずに本フローを終了する。この場合、命令Queue14に格納された命令のうち優先順位が最も高い命令が、内部クロックの立ち上がり等のタイミングで実行される。
これから実行される命令がセマフォ取得要求を含む場合は、セマフォ使用フラグがオン状態に設定されているか否かを判定する(S102)。セマフォ使用フラグとは、セマフォ用レジスタ40に設定されるフラグであり、いずれかのスレッドが共有資源への排他的アクセス権を取得している場合にオン状態に設定される。
なお、セマフォ使用フラグは、セマフォ毎、すなわち、共有資源が複数個存在する場合には共有資源毎に設定される。例えば、RAM30の他に、他のバスを介して接続された共有資源(メモリや周辺回路等)が存在する場合、スレッド#0がRAM30への排他的アクセス権を確保していても、スレッド#1が他の資源にアクセスするのは許容されるからである。
セマフォ使用フラグがオフ状態に設定されている場合は、他のスレッドが共有資源への排他的アクセス権を取得していないことを意味する。従って、これから命令を実行するスレッドの識別番号と共に、セマフォ使用フラグをオン状態に設定する(S104)。
一方、セマフォ使用フラグがオン状態に設定されている場合は、他のスレッドが共有資源への排他的アクセス権を取得していることを意味する。従って、以下の処理を実行する(S106〜S110)。
まず、これから命令を実行するスレッドの帯域を削減する(S106)。本処理は、例えば100%削減であってもよいが、一部削減であっても構わない。以下の説明では、100%削減を行うものとして説明する。
次に、削減したスレッドの帯域を他のスレッドに譲渡する(S108)。本実施例では、削減したスレッドの帯域を、共有資源への排他的アクセス権を確保しているスレッドに譲渡するものとする。
そして、リソース振り替えフラグをオン状態に設定して(S110)、本フローを終了する。リソース振り替えフラグは、リソース振り替えフラグ設定用レジスタ42にスレッド毎に設定されるフラグであり、各スレッドが帯域を削減された状態であるか否かを示している。あるスレッドについてリソース振り替えフラグがオン状態である場合、当該スレッドは帯域を削減された状態であることが判る。
なお、リソース振り替えフラグは、セマフォ使用フラグと同様、セマフォ毎、すなわち、共有資源が複数個存在する場合には共有資源毎に設定される。従って、共有資源の個数×スレッド数のマトリクス状のデータがリソース振り替えフラグ設定用レジスタ42に格納される。
こうしてあるスレッドについて帯域が削減されると、100%削減である場合は、当該スレッドの命令実行がスキップされて次のスレッドの作動に移行する。この場合、OS等は、リソース振り替えフラグを参照するのみで、当該スレッドに関する図3のフローの事項を省略することができる。また、一部削減である場合は、セマフォ確認等の処理のみが実行されることになる。
図4は、各スレッドが命令を処理した後に、OS等により実行される処理の流れを示すフローチャートである。
まず、実行された命令がセマフォ解放要求を含むか否かを判定する(S200)。「命令がセマフォ解放要求を伴う」とは、当該命令がRAM30等の共有資源へのアクセスを終了し、排他的アクセス権を放棄するための要求が含まれる(或いは、当該要求のみである)ことを意味する。
実行された命令がセマフォ解放要求を含まない場合は、何も処理を行わずに本フローを終了する。この場合、図3で説明したフローが実行され、次に作動するスレッドによって命令が処理されることになる。
実行された命令がセマフォ解放要求を含む場合は、セマフォ使用フラグをオフ状態に変更する(S202)。
そして、リソース振り替えフラグ設定用レジスタ42を参照し、リソース振り替えフラグが設定されているか否かを判定する(S204)。リソース振り替えフラグが設定されていない場合は、何も処理を行わずに本フローを終了する。
リソース振り替えフラグが設定されている場合は、以下の処理を実行する(S206〜S210。)
帯域が削減されている全てのスレッドの帯域を初期状態に戻す(S206)。
次に、帯域が譲渡されていたスレッド(今回、命令実行が終了したスレッドが該当する)の帯域を初期状態に戻す(S208)。
そして、リソース振り替えフラグをオフ状態に設定して(S210)、本フローを終了する。
図5は、図3及び図4で示した処理を行う結果として実現される、各スレッドの命令実行状況を示すタイミングチャートである。本図は、図1に例示した基本的なスレッド切り替えに対して、図3及び図4で示した処理を行った結果を示している。なお、図中「rep」は帯域譲渡を示している。
上記の如き処理を行った結果、スレッド#1の帯域がスレッド#0に譲渡されている。この結果、スレッド#1の命令実行が2回スキップされ、その間にスレッド#0が図1の例に比して2周期分多く命令実行を行っている。
これによって、スレッド#0の命令実行が早く終了し、スレッド#1が共有資源への排他的アクセス権を取得するのが、図1の例に比して2周期分早くなる。
これらにより、本実施例のマルチスレッド処理装置1では、図3や図4で説明した制御を行わないものに比して、処理効率を向上させることができる。また、強制的に共有資源への排他的アクセス権を解放させるような制御を行っていないため、各スレッドは処理を確実に実行することができる。
<第2実施例>
以下、図面を参照し、本発明の第2実施例に係るマルチスレッド処理装置2について説明する。
[構成]
マルチスレッド処理装置2は、ハードウエア構成において第1実施例に係るマルチスレッド処理装置1と共通するため、各構成要素についての説明は省略する。
[処理効率を向上させるための制御]
以下、第2実施例における特徴的な制御について説明する。マルチスレッド処理装置2は、図3におけるS108の処理を除き、第1実施例と同様の制御を行う。従って、当該処理を除き、図3及び図4を参照することとし、説明を省略する。
本実施例では、削減したスレッドの帯域を、他の特定のスレッドに譲渡する。すなわち、削減されるスレッドと、譲渡されるスレッドの関係が予めテーブルとして規定されており、このテーブルに従って譲渡先が一意に決定される。
図6は、スレッド#1がスレッド#2に帯域を譲渡するように予め規定されている場合の、各スレッドの命令実行状況を示すタイミングチャートである。図示するように、スレッド#1の帯域がスレッド#2に譲渡されている。この結果、スレッド#1の命令実行が4回スキップされ、その間にスレッド#2が図1の例に比して4周期分多く命令実行を行っている。
これによって、図1の例に比してスレッド#2の命令実行が早く終了する。スレッド#1が共有資源への排他的アクセス権を取得するタイミングは図1に比して早くなる訳ではないが、マルチスレッド処理装置2全体としては処理効率が向上している。
また、図7は、スレッド#1がスレッド#3に帯域を譲渡するように予め規定されている場合の、各スレッドの命令実行状況を示すタイミングチャートである。図示するように、スレッド#1の帯域がスレッド#2に譲渡されている。この結果、スレッド#1の命令実行が4回スキップされ、その間にスレッド#2が図1の例に比して4周期分多く命令実行を行っている。
これによって、図1の例に比してスレッド#3の命令実行が早く終了する。スレッド#1が共有資源への排他的アクセス権を取得するタイミングは図1に比して早くなる訳ではないが、マルチスレッド処理装置2全体としては処理効率が向上している。
これらにより、本実施例のマルチスレッド処理装置2では、帯域譲渡に関する制御を行わないものに比して、処理効率を向上させることができる。また、強制的に共有資源への排他的アクセス権を解放させるような制御を行っていないため、各スレッドは処理を確実に実行することができる。
<第3実施例>
以下、図面を参照し、本発明の第3実施例に係るマルチスレッド処理装置3について説明する。
[構成]
マルチスレッド処理装置3は、ハードウエア構成において第1実施例に係るマルチスレッド処理装置1と共通するため、各構成要素についての説明は省略する。
[処理効率を向上させるための制御]
以下、第3実施例における特徴的な制御について説明する。マルチスレッド処理装置3は、図3におけるS108の処理を除き、第1実施例と同様の制御を行う。従って、当該処理を除き、図3及び図4を参照することとし、説明を省略する。
本実施例では、削減したスレッドの帯域を、当該スレッドを除く複数のスレッドから順に選択されたスレッドに譲渡する。例えば、スレッド#1の帯域が100%削減される場合、まずスレッド#0に帯域が譲渡され、次にスレッド#2に帯域が譲渡され、次にスレッド#3に帯域が譲渡される。そして、これをスレッド#1に関するリソース振り替えフラグがオフ状態に設定されるまで繰り返し実行する。
図8は、第3実施例における、各スレッドの命令実行状況を示すタイミングチャートである。図示するように、スレッド#1の帯域がスレッド#0→スレッド#2→スレッド#3の順に譲渡されている。この結果、スレッド#1の命令実行が3回スキップされ、その間にスレッド#0、#2、#3が図1の例に比して1周期分多く命令実行を行っている。
これによって、図1の例に比してスレッド#0、#2、#3の命令実行が早く終了する。また、スレッド#1が共有資源への排他的アクセス権を取得するタイミングは図1に比して1周期分早くなる。従って、マルチスレッド処理装置2全体として処理効率が向上している。
これらにより、本実施例のマルチスレッド処理装置3では、帯域譲渡に関する制御を行わないものに比して、処理効率を向上させることができる。また、強制的に共有資源への排他的アクセス権を解放させるような制御を行っていないため、各スレッドは処理を確実に実行することができる。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、図2に示した構成はあくまで一例であり、パイプラインコントローラ、スレッド毎の命令バッファ等を備えるものとしてもよい。
また、図3や図4で示したフローの実行主体は、OSに限定されず、専用の実行回路又はマイクロコンピュータを備えるものとしても構わない。
1、2、3 マルチスレッド処理装置
10 ROM
12 PC(プログラムカウンタ)
14 命令Queue
16 汎用レジスタ
18 EXU(演算ユニット)
20 スケジューラ
30 RAM
32 データバス
40 セマフォ用レジスタ
42 リソース振り替えフラグ設定用レジスタ

Claims (6)

  1. 複数のスレッドがハードウエアを部分的に共有して処理を行なうマルチスレッド処理装置であって、
    前記複数のスレッドのうちいずれかが作動するように制御する作動制御手段と、
    前記複数のスレッドのうちいずれかに排他的アクセス権を取得させる排他的アクセス権設定手段と、を備え、
    前記作動制御手段は、前記複数のスレッドのうち他のスレッドが前記排他的アクセス権を取得していることにより待ち状態となるスレッドから他のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、
    マルチスレッド処理装置。
  2. 請求項1に記載のマルチスレッド処理装置であって、
    前記作動制御手段は、前記待ち状態となるスレッドから他のスレッドに、当該回の作動時間の全部を譲渡するように作動制御を行うことを特徴とする、
    マルチスレッド処理装置。
  3. 請求項1又は2に記載のマルチスレッド処理装置であって、
    前記作動制御手段は、前記待ち状態となるスレッドから前記排他的アクセス権を取得しているスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、
    マルチスレッド処理装置。
  4. 請求項1又は2に記載のマルチスレッド処理装置であって、
    前記作動制御手段は、前記待ち状態となるスレッドから他の特定のスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、
    マルチスレッド処理装置。
  5. 請求項1又は2に記載のマルチスレッド処理装置であって、
    前記作動制御手段は、前記待ち状態となるスレッドから当該待ち状態となるスレッドを除く前記複数のスレッドから順に選択されたスレッドに、作動時間の少なくとも一部を譲渡するように作動制御を行うことを特徴とする、
    マルチスレッド処理装置。
  6. 車両に搭載され、各スレッドが車載機器制御のための命令を実行することを特徴とする、請求項1ないし5のいずれか1項に記載のマルチスレッド処理装置。
JP2010033789A 2010-02-18 2010-02-18 マルチスレッド処理装置 Pending JP2011170619A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010033789A JP2011170619A (ja) 2010-02-18 2010-02-18 マルチスレッド処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010033789A JP2011170619A (ja) 2010-02-18 2010-02-18 マルチスレッド処理装置

Publications (1)

Publication Number Publication Date
JP2011170619A true JP2011170619A (ja) 2011-09-01

Family

ID=44684679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010033789A Pending JP2011170619A (ja) 2010-02-18 2010-02-18 マルチスレッド処理装置

Country Status (1)

Country Link
JP (1) JP2011170619A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014197377A (ja) * 2013-03-04 2014-10-16 株式会社リコー 画像形成装置及び画像形成装置の制御方法
JP2018501535A (ja) * 2014-10-28 2018-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コンピューティング環境におけるスレッドの実行を制御する方法、システム、およびコンピュータ・プログラム
CN110362413A (zh) * 2018-04-10 2019-10-22 罗伯特·博世有限公司 用于分布式软件组件之间的通信中错误处理的方法和设备
CN110362444A (zh) * 2018-04-10 2019-10-22 罗伯特·博世有限公司 用于分布式软件组件之间的通信中错误处理的方法和设备
US11061680B2 (en) 2014-10-28 2021-07-13 International Business Machines Corporation Instructions controlling access to shared registers of a multi-threaded processor

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014197377A (ja) * 2013-03-04 2014-10-16 株式会社リコー 画像形成装置及び画像形成装置の制御方法
JP2018501535A (ja) * 2014-10-28 2018-01-18 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コンピューティング環境におけるスレッドの実行を制御する方法、システム、およびコンピュータ・プログラム
US11061680B2 (en) 2014-10-28 2021-07-13 International Business Machines Corporation Instructions controlling access to shared registers of a multi-threaded processor
US11080064B2 (en) 2014-10-28 2021-08-03 International Business Machines Corporation Instructions controlling access to shared registers of a multi-threaded processor
CN110362413A (zh) * 2018-04-10 2019-10-22 罗伯特·博世有限公司 用于分布式软件组件之间的通信中错误处理的方法和设备
CN110362444A (zh) * 2018-04-10 2019-10-22 罗伯特·博世有限公司 用于分布式软件组件之间的通信中错误处理的方法和设备
JP2019194847A (ja) * 2018-04-10 2019-11-07 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置
JP2019194848A (ja) * 2018-04-10 2019-11-07 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツングRobert Bosch Gmbh 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置
JP7312002B2 (ja) 2018-04-10 2023-07-20 ロベルト・ボッシュ・ゲゼルシャフト・ミト・ベシュレンクテル・ハフツング 分散したソフトウェアコンポーネント間の通信におけるエラー処理のための方法および装置

Similar Documents

Publication Publication Date Title
JP5745868B2 (ja) マルチプロセッサシステム
US8407387B2 (en) Multi-thread processor and the multi-thread processor's interrupt processing method having interrupt processing that is processed by an associated hardware thread
JP2010050970A (ja) 中央処理装置と画像処理装置との間で通信するための機器および方法
US7590990B2 (en) Computer system
US20130024870A1 (en) Multicore system and activating method
JP2011170619A (ja) マルチスレッド処理装置
US20140053161A1 (en) Method for Adaptive Scheduling of Multimedia Jobs
TW201732545A (zh) 異構計算系統和方法
JP4985662B2 (ja) プログラム、及び制御装置
JP2014191655A (ja) マルチプロセッサ、電子制御装置、プログラム
EP2282265A1 (en) A hardware task scheduler
JP2014503898A (ja) 処理装置の同期動作のための方法およびシステム
JP2007109057A (ja) プロセッサ
US9760969B2 (en) Graphic processing system and method thereof
JP2012093832A (ja) 情報処理装置
US9342312B2 (en) Processor with inter-execution unit instruction issue
JP2010176403A (ja) マルチスレッドプロセッサ装置
US20080222336A1 (en) Data processing system
US8387053B2 (en) Method and system for enhancing computer processing performance
US20150363227A1 (en) Data processing unit and method for operating a data processing unit
JP2012168725A (ja) マルチスレッド・プロセッサ
JP2011248454A (ja) プロセッサ装置及びプロセッサ装置の制御方法
Yamasaki Responsive multithreaded processor for distributed real-time processing
US8782294B1 (en) Intra-processor resource control
KR20130089524A (ko) 재구성 가능 프로세서 및 그 프로세서에서의 멀티 쓰레딩 지원 방법