JP2010277371A - マルチスレッドプロセッサ、コンパイラおよびオペレーティングシステム - Google Patents
マルチスレッドプロセッサ、コンパイラおよびオペレーティングシステム Download PDFInfo
- Publication number
- JP2010277371A JP2010277371A JP2009129607A JP2009129607A JP2010277371A JP 2010277371 A JP2010277371 A JP 2010277371A JP 2009129607 A JP2009129607 A JP 2009129607A JP 2009129607 A JP2009129607 A JP 2009129607A JP 2010277371 A JP2010277371 A JP 2010277371A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- thread
- unit
- execution
- instructions
- 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
- 238000012545 processing Methods 0.000 claims description 38
- 230000001629 suppression Effects 0.000 claims description 36
- 230000004043 responsiveness Effects 0.000 claims description 8
- 238000005259 measurement Methods 0.000 claims description 3
- 230000003247 decreasing effect Effects 0.000 claims 2
- 230000007423 decrease Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 22
- 230000006870 function Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 17
- 238000001514 detection method Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 9
- 238000005457 optimization Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 7
- 238000003780 insertion Methods 0.000 description 5
- 230000037431 insertion Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/45—Exploiting coarse grain parallelism in compilation, i.e. parallelism between groups of instructions
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Devices For Executing Special Programs (AREA)
- Advance Control (AREA)
Abstract
【解決手段】複数のスレッドの命令を並列実行するマルチスレッドプロセッサ1であって、各々、命令を実行する複数の演算器からなる演算器群119と、スレッド毎に、当該スレッドに含まれる命令を、複数の演算器で同時実行可能な命令からなるグループにグループ化する第1命令グループ化部108〜第3命令グループ化部110と、複数のスレッドの命令の実行頻度を制御することにより、マルチスレッドプロセッサ1の実行サイクル毎に、複数のスレッドの中から、複数の演算器に発行される命令を含むスレッドを選択するスレッド選択部114と、マルチスレッドプロセッサ1の実行サイクル毎に、スレッド選択部114で選択されたスレッドに含まれる命令のうち、グループ化されたグループの命令を、複数の演算器に発行する命令発行制御部115とを備える。
【選択図】図1
Description
本実施の形態において、命令実行制御により命令実行効率を向上させるマルチスレッドプロセッサ、命令数の制限、制限する命令数のレジスタによる指定、制限する命令数の命令による指定、実行サイクル数間隔の指定、実行サイクル数間隔のレジスタによる指定、実行サイクル数間隔の命令による指定、資源制約のある命令の発行間隔の抑制について説明する。
以下、図面を参照しながら本発明の実施の形態2に係るコンパイラおよびオペレーティングシステムについて説明する。
3 コンパイラ
4 オペレーティングシステム
31 パーサ部
32 最適化部
41 システムコール処理部
42 プロセス管理部
43 メモリ管理部
44 ハードウェア制御部
101 命令メモリ
102 第1命令デコーダ
103 第2命令デコーダ
104 第3命令デコーダ
105 第1命令数指定部
106 第2命令数指定部
107 第3命令数指定部
108 第1命令グループ化部
109 第2命令グループ化部
110 第3命令グループ化部
111 第1レジスタ
112 第2レジスタ
113 第3レジスタ
114 スレッド選択部
115 命令発行制御部
116 スレッドセレクタ
117、118 スレッド用レジスタセレクタ
119 演算器群
201 第1発行間隔抑制部
202 第2発行間隔抑制部
203 第3発行間隔抑制部
204 第1実行間隔指定部
205 第2実行間隔指定部
206 第3実行間隔指定部
301 ソースプログラム
302 実行形式コード
321 マルチスレッド実行制御指示解釈部
322 命令スケジューリング部
323 実行状態検出コード生成部
324 実行制御コード生成部
411 マルチスレッド実行制御システムコール処理部
412 逼迫度検出システムコール処理部
3221 応答性確保スケジューリング部
Claims (35)
- 複数のスレッドの命令を並列実行するマルチスレッドプロセッサであって、
各々、命令を実行する複数の演算器と、
スレッド毎に、当該スレッドに含まれる命令を、前記複数の演算器で同時実行可能な命令からなるグループにグループ化するグループ化部と、
前記複数のスレッドの命令の実行頻度を制御することにより、前記マルチスレッドプロセッサの実行サイクル毎に、前記複数のスレッドの中から、前記複数の演算器に発行される命令を含むスレッドを選択するスレッド選択部と、
前記マルチスレッドプロセッサの実行サイクル毎に、前記スレッド選択部で選択された前記スレッドに含まれる命令のうち、前記グループ化部でグループ化されたグループの命令を、前記複数の演算器に発行する命令発行部と
を備えるマルチスレッドプロセッサ。 - さらに、スレッド毎に、前記グループ化部によりグループ化される前記グループに含まれる命令の最大個数を指定する命令数指定部を備え、
前記グループ化部は、前記命令数指定部で指定された前記命令の最大個数を超えないように、命令をグループ化する
請求項1記載のマルチスレッドプロセッサ。 - 前記命令数指定部は、レジスタに設定された値に従い、前記最大個数を指定する
請求項2記載のマルチスレッドプロセッサ。 - 前記命令数指定部は、前記複数のスレッドに含まれる前記最大個数を指定するための命令に従い、前記最大個数を指定する
請求項2記載のマルチスレッドプロセッサ。 - 前記スレッド選択部は、前記複数のスレッドの各々について、前記複数の演算器での命令の実行サイクル間隔を指定する実行間隔指定部を有し、前記実行間隔指定部により指定された実行サイクル間隔に従って、前記スレッドを選択する
請求項1〜4のいずれか1項に記載のマルチスレッドプロセッサ。 - 前記実行間隔指定部は、レジスタに設定された値に従い、前記実行サイクル間隔を指定する
請求項5記載のマルチスレッドプロセッサ。 - 前記実行間隔指定部は、前記複数のスレッドに含まれる前記実行サイクル間隔を指定するための命令に従い、前記実行サイクル間隔を指定する
請求項5記載のマルチスレッドプロセッサ。 - 前記スレッド選択部は、複数のスレッド間で演算器の競合を起こす命令を発行したスレッドに対し、前記競合を起こす命令を一定の実行サイクル数だけ実行できないように抑制する発行間隔抑制部を有する
請求項1〜7のいずれか1項に記載のマルチスレッドプロセッサ。 - ソースプログラムを実行形式コードに変換する、複数のスレッドの命令を並列実行するマルチスレッドプロセッサ向けのコンパイラであって、
マルチスレッド制御に関するプログラマの指示を取得する指示取得部と、
前記指示に基づいてプロセッサの実行モードを制御するコードを生成する制御コード生成部と
を備えるコンパイラ。 - 前記指示取得部は、並列実行を注力する指示を取得する
請求項9記載のコンパイラ。 - 前記指示取得部は、並列実行を注力しない指示を取得する
請求項9記載のコンパイラ。 - 前記制御コード生成部は、前記指示に基づいて演算器数を増減させるコードを生成する
請求項10または11に記載のコンパイラ。 - 前記指示取得部は、命令並列度についての指示を取得し、
前記制御コード生成部は、前記命令並列度でスレッドを実行させるコードを生成する
請求項9記載のコンパイラ。 - 前記指示取得部は、スレッドの実行数についての指示を取得する
請求項9記載のコンパイラ。 - 前記指示取得部は、シングルスレッド実行についての指示を取得する
請求項14記載のコンパイラ。 - 前記制御コード生成部は、前記指示に基づいてスレッドの実行数を制御するコードを生成する
請求項14または15に記載のコンパイラ。 - 前記指示取得部は、スレッドの応答性の確保に関する指示を取得する
請求項9記載のコンパイラ。 - 前記指示取得部は、ストールサイクルが発生する頻度に関する指示を取得する
請求項9記載のコンパイラ。 - 前記指示取得部は、演算器資源の解放に関する指示を取得する
請求項9記載のコンパイラ。 - 前記制御コード生成部は、前記指示に基づいて、一定頻度でストールサイクルが挿入されるコードを生成する
請求項17〜19のいずれか1項に記載のコンパイラ。 - 前記制御コード生成部は、前記指示に基づいて、一定頻度で演算器資源を解放するコードを生成する
請求項17〜19のいずれか1項に記載のコンパイラ。 - 前記指示は、前記ソースプログラム中の一定区間に対する指示である
請求項9〜21のいずれか1項に記載のコンパイラ。 - ソースプログラムを実行形式コードに変換する、複数のスレッドの命令を並列実行するマルチスレッドプロセッサ向けのコンパイラであって、
処理の逼迫度を検出するためのインタフェース
を備えるコンパイラ。 - 前記インタフェースは、サイクルカウントを開始する地点を指示するインタフェースである
請求項23記載のコンパイラ。 - 前記インタフェースは、前記逼迫度の測定地点におけるサイクル数の期待値を入力するするインタフェースである
請求項23記載のコンパイラ。 - 前記インタフェースは、前記期待値と実サイクル数とから導いた逼迫度を返すインタフェースである
請求項25記載のコンパイラ。 - 前記コンパイラは、さらに、
前記逼迫度に応じた処理を生成するコード生成部を備える
請求項23〜26のいずれか1項に記載のコンパイラ。 - 前記コード生成部は、前記逼迫度に応じて演算器資源を増減させるコードを生成する
請求項27記載のコンパイラ。 - 前記コード生成部は、前記逼迫度に応じて命令並列度を増減させるコードを生成する
請求項27記載のコンパイラ。 - 前記インタフェースは、コンパイラの組込み関数で実現される
請求項23〜27のいずれか1項に記載のコンパイラ。 - 複数のスレッドの命令を並列実行するマルチスレッドプロセッサ向けのオペレーティングシステムであって、
マルチスレッド制御に関するプログラマの指示に基づいて、プロセッサの実行モードを制御可能とするシステムコールを処理するシステムコード処理部
を備えるオペレーティングシステム。 - 前記システムコールは、命令並列度に関するものである
請求項31記載のオペレーティングシステム。 - 前記システムコールは、スレッドの実行数に関するものである
請求項31記載のオペレーティングシステム。 - 前記システムコールは、サイクルカウントに関するものである
請求項31記載のオペレーティングシステム。 - 前記システムコールは、逼迫度に応じた処理を実施するものである
請求項31記載のオペレーティングシステム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009129607A JP5463076B2 (ja) | 2009-05-28 | 2009-05-28 | マルチスレッドプロセッサ |
CN201310647848.9A CN103631567A (zh) | 2009-05-28 | 2010-03-18 | 多线程处理器、编译器装置及操作系统装置 |
PCT/JP2010/001931 WO2010137220A1 (ja) | 2009-05-28 | 2010-03-18 | マルチスレッドプロセッサ、コンパイラ装置およびオペレーティングシステム装置 |
CN201080009472.3A CN102334094B (zh) | 2009-05-28 | 2010-03-18 | 多线程处理器、编译器装置及操作系统装置 |
US13/186,818 US20110276787A1 (en) | 2009-05-28 | 2011-07-20 | Multithread processor, compiler apparatus, and operating system apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009129607A JP5463076B2 (ja) | 2009-05-28 | 2009-05-28 | マルチスレッドプロセッサ |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013151777A Division JP2013214331A (ja) | 2013-07-22 | 2013-07-22 | コンパイラ |
JP2013151778A Division JP5654643B2 (ja) | 2013-07-22 | 2013-07-22 | マルチスレッドプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010277371A true JP2010277371A (ja) | 2010-12-09 |
JP5463076B2 JP5463076B2 (ja) | 2014-04-09 |
Family
ID=43222353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009129607A Expired - Fee Related JP5463076B2 (ja) | 2009-05-28 | 2009-05-28 | マルチスレッドプロセッサ |
Country Status (4)
Country | Link |
---|---|
US (1) | US20110276787A1 (ja) |
JP (1) | JP5463076B2 (ja) |
CN (2) | CN102334094B (ja) |
WO (1) | WO2010137220A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016157339A (ja) * | 2015-02-25 | 2016-09-01 | 富士通株式会社 | コンパイラプログラム、コンピュータプログラム及びコンパイラ装置 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9710384B2 (en) | 2008-01-04 | 2017-07-18 | Micron Technology, Inc. | Microprocessor architecture having alternative memory access paths |
US8972958B1 (en) | 2012-10-23 | 2015-03-03 | Convey Computer | Multistage development workflow for generating a custom instruction set reconfigurable processor |
US8713518B2 (en) * | 2010-11-10 | 2014-04-29 | SRC Computers, LLC | System and method for computational unification of heterogeneous implicit and explicit processing elements |
US10430190B2 (en) * | 2012-06-07 | 2019-10-01 | Micron Technology, Inc. | Systems and methods for selectively controlling multithreaded execution of executable code segments |
US8863068B2 (en) | 2012-06-18 | 2014-10-14 | International Business Machines Corporation | Current-aware floorplanning to overcome current delivery limitations in integrated circuits |
US8914764B2 (en) | 2012-06-18 | 2014-12-16 | International Business Machines Corporation | Adaptive workload based optimizations coupled with a heterogeneous current-aware baseline design to mitigate current delivery limitations in integrated circuits |
US8826216B2 (en) * | 2012-06-18 | 2014-09-02 | International Business Machines Corporation | Token-based current control to mitigate current delivery limitations in integrated circuits |
US8826203B2 (en) | 2012-06-18 | 2014-09-02 | International Business Machines Corporation | Automating current-aware integrated circuit and package design and optimization |
US20140233582A1 (en) * | 2012-08-29 | 2014-08-21 | Marvell World Trade Ltd. | Semaphore soft and hard hybrid architecture |
CN104750533B (zh) * | 2013-12-31 | 2018-10-19 | 上海东软载波微电子有限公司 | C程序编译方法及编译器 |
US9575802B2 (en) * | 2014-10-28 | 2017-02-21 | International Business Machines Corporation | Controlling execution of threads in 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 |
US9753776B2 (en) * | 2015-12-01 | 2017-09-05 | International Business Machines Corporation | Simultaneous multithreading resource sharing |
DE102016211286A1 (de) * | 2016-06-23 | 2017-12-28 | Siemens Aktiengesellschaft | Verfahren zum synchronisierten Betrieb von Mehrkernprozessoren |
US10169248B2 (en) | 2016-09-13 | 2019-01-01 | International Business Machines Corporation | Determining cores to assign to cache hostile tasks |
US10204060B2 (en) | 2016-09-13 | 2019-02-12 | International Business Machines Corporation | Determining memory access categories to use to assign tasks to processor cores to execute |
CN107885675B (zh) * | 2017-11-23 | 2019-12-27 | 中国电子科技集团公司第四十一研究所 | 一种多功能测量仪器程控命令处理方法 |
WO2021056277A1 (zh) * | 2019-09-25 | 2021-04-01 | 西门子股份公司 | 一种执行程序的方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08147165A (ja) * | 1994-11-25 | 1996-06-07 | Fujitsu Ltd | マルチコンテキストをサポートするプロセッサおよび処理方法 |
JPH09319597A (ja) * | 1996-03-28 | 1997-12-12 | Hitachi Ltd | 周期的プロセスのスケジューリング方法 |
JP2001306324A (ja) * | 2000-03-30 | 2001-11-02 | Agere Systems Guardian Corp | マルチスレッドvliwプロセッサにおける分割可能なパケットを識別するための方法および装置 |
JP2006127302A (ja) * | 2004-10-29 | 2006-05-18 | Internatl Business Mach Corp <Ibm> | 情報処理装置、コンパイラ、及びコンパイラプログラム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4472773A (en) * | 1981-09-16 | 1984-09-18 | Honeywell Information Systems Inc. | Instruction decoding logic system |
US6567839B1 (en) * | 1997-10-23 | 2003-05-20 | International Business Machines Corporation | Thread switch control in a multithreaded processor system |
US6477562B2 (en) * | 1998-12-16 | 2002-11-05 | Clearwater Networks, Inc. | Prioritized instruction scheduling for multi-streaming processors |
US7096343B1 (en) * | 2000-03-30 | 2006-08-22 | Agere Systems Inc. | Method and apparatus for splitting packets in multithreaded VLIW processor |
US7657893B2 (en) * | 2003-04-23 | 2010-02-02 | International Business Machines Corporation | Accounting method and logic for determining per-thread processor resource utilization in a simultaneous multi-threaded (SMT) processor |
US20050108695A1 (en) * | 2003-11-14 | 2005-05-19 | Long Li | Apparatus and method for an automatic thread-partition compiler |
US7310722B2 (en) * | 2003-12-18 | 2007-12-18 | Nvidia Corporation | Across-thread out of order instruction dispatch in a multithreaded graphics processor |
US7237094B2 (en) * | 2004-10-14 | 2007-06-26 | International Business Machines Corporation | Instruction group formation and mechanism for SMT dispatch |
US7254697B2 (en) * | 2005-02-11 | 2007-08-07 | International Business Machines Corporation | Method and apparatus for dynamic modification of microprocessor instruction group at dispatch |
US7917907B2 (en) * | 2005-03-23 | 2011-03-29 | Qualcomm Incorporated | Method and system for variable thread allocation and switching in a multithreaded processor |
JP2007109057A (ja) * | 2005-10-14 | 2007-04-26 | Hitachi Ltd | プロセッサ |
US7721127B2 (en) * | 2006-03-28 | 2010-05-18 | Mips Technologies, Inc. | Multithreaded dynamic voltage-frequency scaling microprocessor |
US8032737B2 (en) * | 2006-08-14 | 2011-10-04 | Marvell World Trade Ltd. | Methods and apparatus for handling switching among threads within a multithread processor |
-
2009
- 2009-05-28 JP JP2009129607A patent/JP5463076B2/ja not_active Expired - Fee Related
-
2010
- 2010-03-18 CN CN201080009472.3A patent/CN102334094B/zh active Active
- 2010-03-18 WO PCT/JP2010/001931 patent/WO2010137220A1/ja active Application Filing
- 2010-03-18 CN CN201310647848.9A patent/CN103631567A/zh active Pending
-
2011
- 2011-07-20 US US13/186,818 patent/US20110276787A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08147165A (ja) * | 1994-11-25 | 1996-06-07 | Fujitsu Ltd | マルチコンテキストをサポートするプロセッサおよび処理方法 |
JPH09319597A (ja) * | 1996-03-28 | 1997-12-12 | Hitachi Ltd | 周期的プロセスのスケジューリング方法 |
JP2001306324A (ja) * | 2000-03-30 | 2001-11-02 | Agere Systems Guardian Corp | マルチスレッドvliwプロセッサにおける分割可能なパケットを識別するための方法および装置 |
JP2006127302A (ja) * | 2004-10-29 | 2006-05-18 | Internatl Business Mach Corp <Ibm> | 情報処理装置、コンパイラ、及びコンパイラプログラム |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016157339A (ja) * | 2015-02-25 | 2016-09-01 | 富士通株式会社 | コンパイラプログラム、コンピュータプログラム及びコンパイラ装置 |
Also Published As
Publication number | Publication date |
---|---|
US20110276787A1 (en) | 2011-11-10 |
CN103631567A (zh) | 2014-03-12 |
JP5463076B2 (ja) | 2014-04-09 |
CN102334094A (zh) | 2012-01-25 |
WO2010137220A1 (ja) | 2010-12-02 |
CN102334094B (zh) | 2014-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5463076B2 (ja) | マルチスレッドプロセッサ | |
JP5678135B2 (ja) | オペレーティング・システム介入なしにos隔離シーケンサー上でスレッドをスケジューリングする機構 | |
JP5631976B2 (ja) | マルチスレッドマイクロプロセッサにおける命令の発行をスケジュールするための方法及び装置 | |
JP4476636B2 (ja) | 命令語数に実行周期回数を加重値として用いてスレッドをフェッチする同時多重スレッドプロセッサ及びその方法 | |
TW539997B (en) | Method and apparatus for identifying splittable packets in a multithreaded VLIW processor | |
JP5411587B2 (ja) | マルチスレッド実行装置、マルチスレッド実行方法 | |
US20070074217A1 (en) | Scheduling optimizations for user-level threads | |
JP5607545B2 (ja) | マイクロプロセッサシステムにおける命令フェッチングの優先順位付け | |
JP5173714B2 (ja) | マルチスレッドプロセッサ及びその割り込み処理方法 | |
JP5666473B2 (ja) | マルチスレッド式データ処理システム | |
US8560813B2 (en) | Multithreaded processor with fast and slow paths pipeline issuing instructions of differing complexity of different instruction set and avoiding collision | |
US11366669B2 (en) | Apparatus for preventing rescheduling of a paused thread based on instruction classification | |
JP2008529119A (ja) | マルチスレッドプロセッサ | |
KR20150072734A (ko) | 멀티 쓰레딩을 지원하기 위한 연산 유닛, 이를 포함하는 프로세서 및 프로세서의 동작 방법 | |
JP2008522277A (ja) | 優先度の付けられたタスク間の効率的な切り換え | |
US8612958B2 (en) | Program converting apparatus and program conversion method | |
JP2004206692A (ja) | マルチスレッド化プロセッサ・システム上での実行のために、スレッドについての優先順位値を決定する方法および装置 | |
JP2005129001A (ja) | プログラム実行装置、マイクロプロセッサ及びプログラム実行方法 | |
JP5654643B2 (ja) | マルチスレッドプロセッサ | |
JP2013214331A (ja) | コンパイラ | |
JP2003167748A (ja) | マルチスレッド計算機 | |
Shin et al. | Dynamic scheduling issues in SMT architectures | |
JP2011008617A (ja) | マルチスレッド実行装置、オブジェクトプログラムの生成方法、プログラム | |
JP2006065682A (ja) | コンパイラプログラム、コンパイル方法およびコンパイラ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120312 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130604 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130722 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131112 |
|
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: 20140114 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140120 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5463076 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |