JP6474426B2 - マルチスレッディング能力情報取得 - Google Patents
マルチスレッディング能力情報取得 Download PDFInfo
- Publication number
- JP6474426B2 JP6474426B2 JP2016558621A JP2016558621A JP6474426B2 JP 6474426 B2 JP6474426 B2 JP 6474426B2 JP 2016558621 A JP2016558621 A JP 2016558621A JP 2016558621 A JP2016558621 A JP 2016558621A JP 6474426 B2 JP6474426 B2 JP 6474426B2
- Authority
- JP
- Japan
- Prior art keywords
- mode
- thread
- core
- configuration
- cpu
- 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
- 238000000034 method Methods 0.000 claims description 44
- 238000004590 computer program Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 10
- 238000009434 installation Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 34
- 102000004137 Lysophosphatidic Acid Receptors Human genes 0.000 description 33
- 108090000642 Lysophosphatidic Acid Receptors Proteins 0.000 description 33
- 230000006870 function Effects 0.000 description 24
- 230000008569 process Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 13
- 102100029716 DnaJ homolog subfamily A member 3, mitochondrial Human genes 0.000 description 9
- 101000866012 Homo sapiens DnaJ homolog subfamily A member 3, mitochondrial Proteins 0.000 description 9
- 230000000717 retained effect Effects 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 238000004904 shortening Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 230000014616 translation Effects 0.000 description 5
- 101001112162 Homo sapiens Kinetochore protein NDC80 homolog Proteins 0.000 description 4
- 101001038006 Homo sapiens Lysophosphatidic acid receptor 3 Proteins 0.000 description 4
- 102100023890 Kinetochore protein NDC80 homolog Human genes 0.000 description 4
- 102100040388 Lysophosphatidic acid receptor 3 Human genes 0.000 description 4
- -1 TID2 Proteins 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 4
- 239000000872 buffer Substances 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000005192 partition Methods 0.000 description 4
- 101000966782 Homo sapiens Lysophosphatidic acid receptor 1 Proteins 0.000 description 3
- 101001038001 Homo sapiens Lysophosphatidic acid receptor 2 Proteins 0.000 description 3
- 102100040607 Lysophosphatidic acid receptor 1 Human genes 0.000 description 3
- 102100040387 Lysophosphatidic acid receptor 2 Human genes 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241001393742 Simian endogenous retrovirus Species 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- 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/30181—Instruction operation extension or modification
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/34—Addressing or accessing the instruction operand or the result ; Formation of operand address; Addressing modes
- G06F9/342—Extension of operand address space
-
- 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/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]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
Description
上記の特徴の1つ又は複数に加えて、又は代替的に、さらなる実施形態は、RMTCI命令を実行したコアが、STモードであり、STモードより以前にMTモードがイネーブルであったと判定された場合、当該MTモードをリ・イネーブルにする場合を含むことができる。
上記の特徴の1つ又は複数に加えて、又は代替的に、さらなる実施形態は、MTモードをリ・イネーブルにすると、以前のMTモードにおける第二スレッドの数がコア上にリストアされる場合を含むことができる。
上記の特徴の1つ又は複数に加えて、又は代替的に、さらなる実施形態は、RMTCI命令を実行したコアが、STモードであり、STモードより以前にMTモードがイネーブルであったと判定されなかった場合、当該STモードを保つ場合を含むことができる。
上記の特徴の1つ又は複数に加えて、又は代替的に、さらなる実施形態は、RMTCI命令が、サービス・コール(service call、SERVC)命令又はシステム情報格納(store system information、STSI)命令のいずれか1つであり、SERVC命令は、スレッド識別情報をメモリ内の応答ブロックに格納するように構成され、STSI命令は、スレッド識別情報をメモリ内のシステム情報ブロック(SYSIB)内に格納するように構成される場合を含むことができる。
200:処理回路
1102、1104、1302:コンフィギュレーション
1114、1116、1310:MTモード
1115:スレッド・コンテキスト
1118、1122、1312、1316:時刻
1120、1124、1314:STモード
1318:再開されたMTモード
Claims (14)
- コンピュータシステムであって、
単一スレッド(ST)モードとマルチスレッディング(MT)モードとの間で構成可能なコアと、メモリとを含むコンフィギュレーションであって、前記STモードは、第一スレッドをサポートし、前記MTモードは、前記コアの共有リソース上で前記第一スレッド及び1以上の第二スレッドをサポートする、コンフィギュレーションを備え、
前記コアにより、前記メモリからフェッチしたマルチスレッディング能力情報取得(RMTCI)命令を実行することを含み、前記実行することは、
前記コンフィギュレーションのマルチスレッディング能力を識別するスレッド識別情報を、前記メモリに格納することと、
前記格納したスレッド識別情報に基づいて、前記コンフィギュレーションは以前MTモードがイネーブルであったか否か判定することと、
を含む、コンピュータシステム。 - 前記RMTCI命令を実行したコアは、STモードであり、
前記STモードより以前にMTモードがイネーブルであったと判定された場合、当該MTモードをリ・イネーブルにする、請求項1に記載のコンピュータシステム。 - 前記MTモードをリ・イネーブルにすると、前記以前のMTモードにおける第二スレッドの数が前記コア上にリストアされる、請求項2に記載のコンピュータシステム。
- 前記RMTCI命令を実行したコアは、STモードであり、
前記STモードより以前にMTモードがイネーブルであったと判定されなかった場合、当該STモードを保つ、請求項1に記載のコンピュータシステム。 - 前記RMTCI命令が、サービス・コール(SERVC)命令又はシステム情報格納(STSI)命令のいずれか1つであり、前記SERVC命令は、前記スレッド識別情報を前記メモリ内の応答ブロックに格納するように構成され、前記STSI命令は、前記スレッド識別情報を前記メモリ内のシステム情報ブロック(SYSIB)内に格納するように構成される、請求項1に記載のコンピュータシステム。
- 前記応答ブロックが、サポートされるプログラム指定最大スレッド識別値を示すビットのマスクをさらに含む、請求項5に記載のコンピュータシステム。
- 前記格納したスレッド識別情報が、前記コアがマルチスレッディングをサポートするか否かを示すMTインストール識別子を含む、請求項1に記載のコンピュータシステム。
- 前記格納したスレッド識別情報が、前記コアの最大サポートスレッド数を示す最大スレッド識別子を含む、請求項1に記載のコンピュータシステム。
- 前記格納したスレッド識別情報が、前記コンフィギュレーションの前記コアに直近に設定されたプログラム指定最大スレッド識別子を含む、請求項1に記載のコンピュータシステム。
- 前記直近に設定されたプログラム指定最大スレッド識別子が示す非ゼロ値に基づいて、前記コンフィギュレーションは以前MTモードがイネーブルであったかを判定すること、
をさらに含む、請求項9に記載のコンピュータシステム。 - 前記コンフィギュレーションが複数のコアタイプをサポートし、コアの最大サポートスレッド数を示す最大スレッド識別子が、前記コンフィギュレーション内の前記コアタイプの各々に対して維持される、請求項1に記載のコンピュータシステム。
- 単一スレッド(ST)モードとマルチスレッディング(MT)モードとの間で構成可能なコアと、メモリとを含むコンフィギュレーションにおけるマルチスレッディング能力情報取得のためのコンピュータ実装の方法であって、前記STモードは、第一スレッドをサポートし、前記MTモードは、前記コアの共有リソース上で前記第一スレッド及び1以上の第二スレッドをサポートし、前記方法は、
前記コアにより、前記メモリからフェッチしたマルチスレッディング能力情報取得(RMTCI)命令を実行すること、
を含み、前記実行は、
前記コンフィギュレーションのマルチスレッディング能力を識別するスレッド識別情報を、前記メモリに格納することと、
前記格納したスレッド識別情報に基づいて、前記コンフィギュレーションは以前MTモードがイネーブルであったか否か判定することと、
を含む、方法。 - 請求項1乃至11の何れか一項に記載のコンピュータシステムのコアによりマルチスレッディング能力情報取得(RMTCI)命令の実行をすることを含む方法。
- 単一スレッド(ST)モードとマルチスレッディング(MT)モードとの間で構成可能なコアと、メモリとを含むコンフィギュレーションにおけるマルチスレッディング能力情報取得のためのコンピュータ・プログラムであって、前記STモードは、第一スレッドをサポートし、前記MTモードは、前記コアの共有リソース上に前記第一スレッド及び1以上の第二スレッドをサポートし、前記コンピュータ・プログラムは、
前記コアに、前記メモリからフェッチしたマルチスレッディング能力情報取得(RMTCI)命令を実行させるためのものであり、前記実行は、
前記コンフィギュレーションのマルチスレッディング能力を識別するスレッド識別情報を、前記メモリに格納することと、
前記格納したスレッド識別情報に基づいて、前記コンフィギュレーションは以前MTモードがイネーブルであったか否か判定することと、
を含む、コンピュータ・プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/226,989 US9218185B2 (en) | 2014-03-27 | 2014-03-27 | Multithreading capability information retrieval |
US14/226,989 | 2014-03-27 | ||
PCT/EP2015/055516 WO2015144489A1 (en) | 2014-03-27 | 2015-03-17 | Multithreading capability information retrieval |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017513121A JP2017513121A (ja) | 2017-05-25 |
JP6474426B2 true JP6474426B2 (ja) | 2019-02-27 |
Family
ID=52727107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016558621A Active JP6474426B2 (ja) | 2014-03-27 | 2015-03-17 | マルチスレッディング能力情報取得 |
Country Status (7)
Country | Link |
---|---|
US (1) | US9218185B2 (ja) |
EP (1) | EP3123327B1 (ja) |
JP (1) | JP6474426B2 (ja) |
CN (1) | CN106462390B (ja) |
BR (1) | BR112016022285B1 (ja) |
PL (1) | PL3123327T3 (ja) |
WO (1) | WO2015144489A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10102004B2 (en) | 2014-03-27 | 2018-10-16 | International Business Machines Corporation | Hardware counters to track utilization in a multithreading computer system |
US9417876B2 (en) * | 2014-03-27 | 2016-08-16 | International Business Machines Corporation | Thread context restoration in a multithreading computer system |
US9223574B2 (en) * | 2014-03-27 | 2015-12-29 | International Business Machines Corporation | Start virtual execution instruction for dispatching multiple threads in a computer |
US9213569B2 (en) * | 2014-03-27 | 2015-12-15 | International Business Machines Corporation | Exiting multiple threads in a computer |
JP2023133850A (ja) * | 2022-03-14 | 2023-09-27 | 富士通株式会社 | 演算処理装置および演算処理方法 |
Family Cites Families (76)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5684993A (en) | 1993-01-04 | 1997-11-04 | Microsoft Corporation | Segregation of thread-specific information from shared task information |
JPH06348584A (ja) * | 1993-06-01 | 1994-12-22 | Internatl Business Mach Corp <Ibm> | データ処理システム |
US6272625B1 (en) | 1997-10-08 | 2001-08-07 | Oak Technology, Inc. | Apparatus and method for processing events in a digital versatile disc (DVD) system using system threads and separate dormant/awake counter threads and clock driven semaphores |
US6697935B1 (en) | 1997-10-23 | 2004-02-24 | International Business Machines Corporation | Method and apparatus for selecting thread switch events in a multithreaded processor |
US6542921B1 (en) | 1999-07-08 | 2003-04-01 | Intel Corporation | Method and apparatus for controlling the processing priority between multiple threads in a multithreaded processor |
US6792525B2 (en) | 2000-04-19 | 2004-09-14 | Hewlett-Packard Development Company, L.P. | Input replicator for interrupts in a simultaneous and redundantly threaded processor |
US6757811B1 (en) | 2000-04-19 | 2004-06-29 | Hewlett-Packard Development Company, L.P. | Slack fetch to improve performance in a simultaneous and redundantly threaded processor |
US7073173B1 (en) | 2000-12-04 | 2006-07-04 | Microsoft Corporation | Code and thread differential addressing via multiplex page maps |
US6954846B2 (en) | 2001-08-07 | 2005-10-11 | Sun Microsystems, Inc. | Microprocessor and method for giving each thread exclusive access to one register file in a multi-threading mode and for giving an active thread access to multiple register files in a single thread mode |
US7363474B2 (en) | 2001-12-31 | 2008-04-22 | Intel Corporation | Method and apparatus for suspending execution of a thread until a specified memory access occurs |
US8024735B2 (en) | 2002-06-14 | 2011-09-20 | Intel Corporation | Method and apparatus for ensuring fairness and forward progress when executing multiple threads of execution |
US20040154010A1 (en) | 2003-01-31 | 2004-08-05 | Pedro Marcuello | Control-quasi-independent-points guided speculative multithreading |
US7472258B2 (en) * | 2003-04-21 | 2008-12-30 | International Business Machines Corporation | Dynamically shared group completion table between multiple threads |
US7290261B2 (en) | 2003-04-24 | 2007-10-30 | International Business Machines Corporation | Method and logical apparatus for rename register reallocation in a simultaneous multi-threaded (SMT) processor |
US20040216101A1 (en) | 2003-04-24 | 2004-10-28 | International Business Machines Corporation | Method and logical apparatus for managing resource redistribution in a simultaneous multi-threaded (SMT) processor |
US7496915B2 (en) | 2003-04-24 | 2009-02-24 | International Business Machines Corporation | Dynamic switching of multithreaded processor between single threaded and simultaneous multithreaded modes |
US7836450B2 (en) | 2003-08-28 | 2010-11-16 | Mips Technologies, Inc. | Symmetric multiprocessor operating system for execution on non-independent lightweight thread contexts |
US7849297B2 (en) | 2003-08-28 | 2010-12-07 | Mips Technologies, Inc. | Software emulation of directed exceptions in a multithreading processor |
US9189230B2 (en) * | 2004-03-31 | 2015-11-17 | Intel Corporation | Method and system to provide concurrent user-level, non-privileged shared resource thread creation and execution |
US20050251649A1 (en) | 2004-04-23 | 2005-11-10 | Sony Computer Entertainment Inc. | Methods and apparatus for address map optimization on a multi-scalar extension |
US7216223B2 (en) | 2004-04-30 | 2007-05-08 | Hewlett-Packard Development Company, L.P. | Configuring multi-thread status |
US7418582B1 (en) | 2004-05-13 | 2008-08-26 | Sun Microsystems, Inc. | Versatile register file design for a multi-threaded processor utilizing different modes and register windows |
US7519796B1 (en) | 2004-06-30 | 2009-04-14 | Sun Microsystems, Inc. | Efficient utilization of a store buffer using counters |
JP4504132B2 (ja) | 2004-07-30 | 2010-07-14 | 富士通株式会社 | 記憶制御装置、中央処理装置、情報処理装置及び記憶制御装置の制御方法 |
US7707578B1 (en) | 2004-12-16 | 2010-04-27 | Vmware, Inc. | Mechanism for scheduling execution of threads for fair resource allocation in a multi-threaded and/or multi-core processing system |
US8621458B2 (en) | 2004-12-21 | 2013-12-31 | Microsoft Corporation | Systems and methods for exposing processor topology for virtual machines |
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 |
US8010969B2 (en) | 2005-06-13 | 2011-08-30 | Intel Corporation | Mechanism for monitoring instruction set based thread execution on a plurality of instruction sequencers |
JP4963018B2 (ja) | 2005-08-15 | 2012-06-27 | 株式会社ソニー・コンピュータエンタテインメント | スケジューリング方法およびスケジューリング装置 |
US8275942B2 (en) | 2005-12-22 | 2012-09-25 | Intel Corporation | Performance prioritization in multi-threaded processors |
US7577826B2 (en) | 2006-01-30 | 2009-08-18 | Sony Computer Entertainment Inc. | Stall prediction thread management |
US8041929B2 (en) | 2006-06-16 | 2011-10-18 | Cisco Technology, Inc. | Techniques for hardware-assisted multi-threaded processing |
US8136111B2 (en) | 2006-06-27 | 2012-03-13 | International Business Machines Corporation | Managing execution of mixed workloads in a simultaneous multi-threaded (SMT) enabled system |
US7698540B2 (en) | 2006-10-31 | 2010-04-13 | Hewlett-Packard Development Company, L.P. | Dynamic hardware multithreading and partitioned hardware multithreading |
US7584346B1 (en) | 2007-01-25 | 2009-09-01 | Sun Microsystems, Inc. | Method and apparatus for supporting different modes of multi-threaded speculative execution |
CN101042640A (zh) | 2007-04-24 | 2007-09-26 | 上海华龙信息技术开发中心 | 一种带有位扩充和位压缩单元的数字信号处理器 |
US20080270658A1 (en) | 2007-04-27 | 2008-10-30 | Matsushita Electric Industrial Co., Ltd. | Processor system, bus controlling method, and semiconductor device |
WO2008155797A1 (ja) * | 2007-06-20 | 2008-12-24 | Fujitsu Limited | 演算装置 |
US8544006B2 (en) | 2007-12-19 | 2013-09-24 | International Business Machines Corporation | Resolving conflicts by restarting execution of failed discretely executable subcomponent using register and memory values generated by main component after the occurrence of a conflict |
CN101216725B (zh) | 2008-01-04 | 2011-04-27 | 东南大学 | 利用堆栈深度进行多线程预测的动态功耗控制方法 |
US7734900B2 (en) * | 2008-01-11 | 2010-06-08 | International Business Machines Corporation | Computer configuration virtual topology discovery and instruction therefore |
US7739434B2 (en) * | 2008-01-11 | 2010-06-15 | International Business Machines Corporation | Performing a configuration virtual topology change and instruction therefore |
US7559061B1 (en) | 2008-03-16 | 2009-07-07 | International Business Machines Corporation | Simultaneous multi-threading control monitor |
US8495662B2 (en) | 2008-08-11 | 2013-07-23 | Hewlett-Packard Development Company, L.P. | System and method for improving run-time performance of applications with multithreaded and single threaded routines |
US7873816B2 (en) | 2008-11-20 | 2011-01-18 | International Business Machines Corporation | Pre-loading context states by inactive hardware thread in advance of context switch |
US8402464B2 (en) | 2008-12-01 | 2013-03-19 | Oracle America, Inc. | System and method for managing contention in transactional memory using global execution data |
US8346509B2 (en) | 2009-04-08 | 2013-01-01 | Intel Corporation | Context switch sampling |
US8949582B2 (en) | 2009-04-27 | 2015-02-03 | Lsi Corporation | Changing a flow identifier of a packet in a multi-thread, multi-flow network processor |
GB2469822B (en) | 2009-04-28 | 2011-04-20 | Imagination Tech Ltd | Method and apparatus for scheduling the issue of instructions in a multithreaded microprocessor |
US8612978B2 (en) | 2009-12-10 | 2013-12-17 | Oracle America, Inc. | Code execution utilizing single or multiple threads |
US8615644B2 (en) | 2010-02-19 | 2013-12-24 | International Business Machines Corporation | Processor with hardware thread control logic indicating disable status when instructions accessing shared resources are completed for safe shared resource condition |
US8381216B2 (en) | 2010-03-05 | 2013-02-19 | Microsoft Corporation | Dynamic thread pool management |
WO2011161774A1 (ja) | 2010-06-22 | 2011-12-29 | 富士通株式会社 | マルチコアプロセッサシステム、制御プログラム、および制御方法 |
US8677361B2 (en) | 2010-09-30 | 2014-03-18 | International Business Machines Corporation | Scheduling threads based on an actual power consumption and a predicted new power consumption |
US8656408B2 (en) | 2010-09-30 | 2014-02-18 | International Business Machines Corporations | Scheduling threads in a processor based on instruction type power consumption |
US8418177B2 (en) | 2010-10-01 | 2013-04-09 | Microsoft Corporation | Virtual machine and/or multi-level scheduling support on systems with asymmetric processor cores |
US8601193B2 (en) | 2010-10-08 | 2013-12-03 | International Business Machines Corporation | Performance monitor design for instruction profiling using shared counters |
US8489787B2 (en) | 2010-10-12 | 2013-07-16 | International Business Machines Corporation | Sharing sampled instruction address registers for efficient instruction sampling in massively multithreaded processors |
US20120137295A1 (en) | 2010-11-30 | 2012-05-31 | Alcatel-Lucent Canada Inc. | Method for displaying cpu utilization in a multi-processing system |
US9213551B2 (en) | 2011-03-11 | 2015-12-15 | Oracle International Corporation | Return address prediction in multithreaded processors |
US9330430B2 (en) | 2011-03-21 | 2016-05-03 | Apple Inc. | Fast queries in a multithreaded queue of a graphics system |
US9015449B2 (en) | 2011-03-27 | 2015-04-21 | International Business Machines Corporation | Region-weighted accounting of multi-threaded processor core according to dispatch state |
GB2489708B (en) | 2011-04-05 | 2020-04-15 | Advanced Risc Mach Ltd | Thread selection for multithreaded processing |
US8695010B2 (en) | 2011-10-03 | 2014-04-08 | International Business Machines Corporation | Privilege level aware processor hardware resource management facility |
CA2759365A1 (en) | 2011-11-24 | 2013-05-24 | Ibm Canada Limited - Ibm Canada Limitee | Identification of thread progress information |
US9075610B2 (en) | 2011-12-15 | 2015-07-07 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including thread consolidation |
US9069598B2 (en) | 2012-01-06 | 2015-06-30 | International Business Machines Corporation | Providing logical partions with hardware-thread specific information reflective of exclusive use of a processor core |
CN102566974B (zh) | 2012-01-14 | 2014-03-26 | 哈尔滨工程大学 | 基于同时多线程的取指控制方法 |
US8930950B2 (en) | 2012-01-19 | 2015-01-06 | International Business Machines Corporation | Management of migrating threads within a computing environment to transform multiple threading mode processors to single thread mode processors |
US8751830B2 (en) | 2012-01-23 | 2014-06-10 | International Business Machines Corporation | Memory address translation-based data encryption/compression |
US8966232B2 (en) | 2012-02-10 | 2015-02-24 | Freescale Semiconductor, Inc. | Data processing system operable in single and multi-thread modes and having multiple caches and method of operation |
US20130283280A1 (en) | 2012-04-20 | 2013-10-24 | Qualcomm Incorporated | Method to reduce multi-threaded processor power consumption |
US9075735B2 (en) | 2012-06-21 | 2015-07-07 | Breakingpoint Systems, Inc. | Systems and methods for efficient memory access |
US9529719B2 (en) | 2012-08-05 | 2016-12-27 | Advanced Micro Devices, Inc. | Dynamic multithreaded cache allocation |
US8984313B2 (en) | 2012-08-31 | 2015-03-17 | Intel Corporation | Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator |
CN103488684B (zh) | 2013-08-23 | 2016-12-28 | 国家电网公司 | 基于缓存数据多线程处理的电力可靠性指标快速计算方法 |
-
2014
- 2014-03-27 US US14/226,989 patent/US9218185B2/en active Active
-
2015
- 2015-03-17 BR BR112016022285-7A patent/BR112016022285B1/pt active IP Right Grant
- 2015-03-17 CN CN201580015834.2A patent/CN106462390B/zh active Active
- 2015-03-17 JP JP2016558621A patent/JP6474426B2/ja active Active
- 2015-03-17 WO PCT/EP2015/055516 patent/WO2015144489A1/en active Application Filing
- 2015-03-17 EP EP15711709.4A patent/EP3123327B1/en active Active
- 2015-03-17 PL PL15711709T patent/PL3123327T3/pl unknown
Also Published As
Publication number | Publication date |
---|---|
EP3123327A1 (en) | 2017-02-01 |
WO2015144489A1 (en) | 2015-10-01 |
PL3123327T3 (pl) | 2019-09-30 |
EP3123327B1 (en) | 2019-05-15 |
US20150277913A1 (en) | 2015-10-01 |
CN106462390B (zh) | 2019-05-03 |
BR112016022285B1 (pt) | 2022-10-04 |
JP2017513121A (ja) | 2017-05-25 |
BR112016022285A2 (ja) | 2017-08-15 |
US9218185B2 (en) | 2015-12-22 |
CN106462390A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6474425B2 (ja) | マルチスレッディング・コンピュータシステムにおけるアドレス拡張及び短縮 | |
JP6501789B2 (ja) | マルチスレッディングの動的有効化のためのコンピュータ・システム、コンピュータ実装方法およびコンピュータ・プログラム製品 | |
JP6509245B2 (ja) | マルチスレッディング・コンピュータ・システムにおけるスレッド・コンテキスト保存のためのコンピュータ・システム、コンピュータ実装方法およびコンピュータ・プログラム製品 | |
JP6495319B2 (ja) | マルチスレッディング・コンピュータシステムにおけるアイドル時間累積 | |
JP6509246B2 (ja) | マルチスレッディング・コンピュータ・システムにおいてスレッド・コンテキストを復元するのためのコンピュータ・システム、コンピュータ実装方法およびコンピュータ・プログラム | |
JP6440734B2 (ja) | マルチスレッディング・コンピュータ・システムにおける利用を追跡するコンピュータ実装方法、システムおよびコンピュータ・プログラム | |
JP6474426B2 (ja) | マルチスレッディング能力情報取得 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170224 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180919 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180925 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181218 |
|
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: 20190108 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6474426 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |