JP2006114036A - Smtディスパッチのための命令グループ形成およびメカニズム - Google Patents
Smtディスパッチのための命令グループ形成およびメカニズム Download PDFInfo
- Publication number
- JP2006114036A JP2006114036A JP2005294193A JP2005294193A JP2006114036A JP 2006114036 A JP2006114036 A JP 2006114036A JP 2005294193 A JP2005294193 A JP 2005294193A JP 2005294193 A JP2005294193 A JP 2005294193A JP 2006114036 A JP2006114036 A JP 2006114036A
- Authority
- JP
- Japan
- Prior art keywords
- resource
- processor
- instruction
- program instructions
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
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)
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US10/965,143 US7237094B2 (en) | 2004-10-14 | 2004-10-14 | Instruction group formation and mechanism for SMT dispatch |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2006114036A true JP2006114036A (ja) | 2006-04-27 |
| JP2006114036A5 JP2006114036A5 (enExample) | 2009-08-06 |
Family
ID=36317706
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2005294193A Pending JP2006114036A (ja) | 2004-10-14 | 2005-10-06 | Smtディスパッチのための命令グループ形成およびメカニズム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US7237094B2 (enExample) |
| JP (1) | JP2006114036A (enExample) |
| CN (1) | CN100357884C (enExample) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012515386A (ja) * | 2009-01-16 | 2012-07-05 | イマジネイション テクノロジーズ リミテッド | マルチスレッド式データ処理システム |
| CN102662632A (zh) * | 2012-03-14 | 2012-09-12 | 北京神州数码思特奇信息技术股份有限公司 | 一种利用信号量实现的序列号生成方法和生成器 |
| JP2012525620A (ja) * | 2009-04-28 | 2012-10-22 | イマジネイション テクノロジーズ リミテッド | マルチスレッドマイクロプロセッサにおける命令の発行をスケジュールするための方法及び装置 |
| JP2017516215A (ja) * | 2014-05-12 | 2017-06-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 動的な命令ストリーム・マッピングを使用するプロセッサ・コア、プロセッサ・コアを含むコンピュータ・システム、およびプロセッサ・コアによってプログラム命令を実行する方法(動的な命令ストリーム・マッピングを使用する並列スライス・プロセッサ) |
| US10545762B2 (en) | 2014-09-30 | 2020-01-28 | International Business Machines Corporation | Independent mapping of threads |
| US10983800B2 (en) | 2015-01-12 | 2021-04-20 | International Business Machines Corporation | Reconfigurable processor with load-store slices supporting reorder and controlling access to cache slices |
| US11150907B2 (en) | 2015-01-13 | 2021-10-19 | International Business Machines Corporation | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries |
| JP2024511764A (ja) * | 2021-03-31 | 2024-03-15 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | ウェーブフロント(wavefront)の選択及び実行 |
Families Citing this family (45)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7836276B2 (en) * | 2005-12-02 | 2010-11-16 | Nvidia Corporation | System and method for processing thread groups in a SIMD architecture |
| US8174531B1 (en) | 2003-10-29 | 2012-05-08 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
| US8860737B2 (en) * | 2003-10-29 | 2014-10-14 | Nvidia Corporation | Programmable graphics processor for multithreaded execution of programs |
| JPWO2006134693A1 (ja) * | 2005-06-15 | 2009-01-08 | 松下電器産業株式会社 | プロセッサ |
| US7434032B1 (en) | 2005-12-13 | 2008-10-07 | Nvidia Corporation | Tracking register usage during multithreaded processing using a scoreboard having separate memory regions and storing sequential register size indicators |
| KR100837400B1 (ko) * | 2006-07-20 | 2008-06-12 | 삼성전자주식회사 | 멀티스레딩/비순차 병합 기법에 따라 처리하는 방법 및장치 |
| US9069547B2 (en) | 2006-09-22 | 2015-06-30 | Intel Corporation | Instruction and logic for processing text strings |
| US20080229062A1 (en) * | 2007-03-12 | 2008-09-18 | Lorenzo Di Gregorio | Method of sharing registers in a processor and processor |
| US7707390B2 (en) * | 2007-04-25 | 2010-04-27 | Arm Limited | Instruction issue control within a multi-threaded in-order superscalar processor |
| EP2169538A4 (en) * | 2007-06-20 | 2010-12-01 | Fujitsu Ltd | INSTRUCTIONS PROCESSOR |
| US20090210664A1 (en) * | 2008-02-15 | 2009-08-20 | Luick David A | System and Method for Issue Schema for a Cascaded Pipeline |
| US7870368B2 (en) | 2008-02-19 | 2011-01-11 | International Business Machines Corporation | System and method for prioritizing branch instructions |
| US8108654B2 (en) * | 2008-02-19 | 2012-01-31 | International Business Machines Corporation | System and method for a group priority issue schema for a cascaded pipeline |
| US20090210666A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Resolving Issue Conflicts of Load Instructions |
| US7877579B2 (en) * | 2008-02-19 | 2011-01-25 | International Business Machines Corporation | System and method for prioritizing compare instructions |
| US7996654B2 (en) * | 2008-02-19 | 2011-08-09 | International Business Machines Corporation | System and method for optimization within a group priority issue schema for a cascaded pipeline |
| US20090210672A1 (en) * | 2008-02-19 | 2009-08-20 | Luick David A | System and Method for Resolving Issue Conflicts of Load Instructions |
| US7865700B2 (en) | 2008-02-19 | 2011-01-04 | International Business Machines Corporation | System and method for prioritizing store instructions |
| US8095779B2 (en) * | 2008-02-19 | 2012-01-10 | International Business Machines Corporation | System and method for optimization within a group priority issue schema for a cascaded pipeline |
| US7984270B2 (en) | 2008-02-19 | 2011-07-19 | International Business Machines Corporation | System and method for prioritizing arithmetic instructions |
| US7882335B2 (en) * | 2008-02-19 | 2011-02-01 | International Business Machines Corporation | System and method for the scheduling of load instructions within a group priority issue schema for a cascaded pipeline |
| US8108655B2 (en) * | 2009-03-24 | 2012-01-31 | International Business Machines Corporation | Selecting fixed-point instructions to issue on load-store unit |
| US8127115B2 (en) * | 2009-04-03 | 2012-02-28 | International Business Machines Corporation | Group formation with multiple taken branches per group |
| JP5463076B2 (ja) * | 2009-05-28 | 2014-04-09 | パナソニック株式会社 | マルチスレッドプロセッサ |
| US8171224B2 (en) * | 2009-05-28 | 2012-05-01 | International Business Machines Corporation | D-cache line use history based done bit based on successful prefetchable counter |
| US8332587B2 (en) * | 2009-05-28 | 2012-12-11 | International Business Machines Corporation | Cache line use history based done bit modification to I-cache replacement scheme |
| US8140760B2 (en) * | 2009-05-28 | 2012-03-20 | International Business Machines Corporation | I-cache line use history based done bit based on successful prefetchable counter |
| US8291169B2 (en) | 2009-05-28 | 2012-10-16 | International Business Machines Corporation | Cache line use history based done bit modification to D-cache replacement scheme |
| CN101957744B (zh) * | 2010-10-13 | 2013-07-24 | 北京科技大学 | 一种用于微处理器的硬件多线程控制方法及其装置 |
| US9304774B2 (en) * | 2011-02-04 | 2016-04-05 | Qualcomm Incorporated | Processor with a coprocessor having early access to not-yet issued instructions |
| US9465755B2 (en) | 2011-07-18 | 2016-10-11 | Hewlett Packard Enterprise Development Lp | Security parameter zeroization |
| TWI447646B (zh) | 2011-11-18 | 2014-08-01 | Asmedia Technology Inc | 資料傳輸裝置及多個指令的整合方法 |
| US8856193B2 (en) * | 2011-12-20 | 2014-10-07 | Sap Se | Merge monitor for table delta partitions |
| US9798548B2 (en) | 2011-12-21 | 2017-10-24 | Nvidia Corporation | Methods and apparatus for scheduling instructions using pre-decode data |
| US9513915B2 (en) * | 2012-03-28 | 2016-12-06 | International Business Machines Corporation | Instruction merging optimization |
| US9405701B2 (en) | 2012-03-30 | 2016-08-02 | Intel Corporation | Apparatus and method for accelerating operations in a processor which uses shared virtual memory |
| US9336057B2 (en) | 2012-12-21 | 2016-05-10 | Microsoft Technology Licensing, Llc | Assigning jobs to heterogeneous processing modules |
| CN105446700B (zh) * | 2014-05-30 | 2018-01-02 | 华为技术有限公司 | 一种指令执行方法以及顺序处理器 |
| US9715392B2 (en) * | 2014-08-29 | 2017-07-25 | Qualcomm Incorporated | Multiple clustered very long instruction word processing core |
| US11275590B2 (en) * | 2015-08-26 | 2022-03-15 | Huawei Technologies Co., Ltd. | Device and processing architecture for resolving execution pipeline dependencies without requiring no operation instructions in the instruction memory |
| US10423423B2 (en) | 2015-09-29 | 2019-09-24 | International Business Machines Corporation | Efficiently managing speculative finish tracking and error handling for load instructions |
| US20170300361A1 (en) * | 2016-04-15 | 2017-10-19 | Intel Corporation | Employing out of order queues for better gpu utilization |
| US11314516B2 (en) * | 2018-01-19 | 2022-04-26 | Marvell Asia Pte, Ltd. | Issuing instructions based on resource conflict constraints in microprocessor |
| CN108400866B (zh) * | 2018-03-01 | 2021-02-02 | 中国人民解放军战略支援部队信息工程大学 | 一种粗粒度可重构密码逻辑阵列 |
| CN112445619A (zh) * | 2020-11-30 | 2021-03-05 | 海光信息技术股份有限公司 | 在多线程系统中动态共享有序资源的管理系统和方法 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11272520A (ja) * | 1997-11-26 | 1999-10-08 | Digital Equip Corp <Dec> | プロセッサパイプラインにおいて多数の潜在的に同時の命令をサンプリングする装置 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5337415A (en) * | 1992-12-04 | 1994-08-09 | Hewlett-Packard Company | Predecoding instructions for supercalar dependency indicating simultaneous execution for increased operating frequency |
| US5828895A (en) * | 1995-09-20 | 1998-10-27 | International Business Machines Corporation | Methods and system for predecoding instructions in a superscalar data processing system |
| US5958042A (en) * | 1996-06-11 | 1999-09-28 | Sun Microsystems, Inc. | Grouping logic circuit in a pipelined superscalar processor |
| US6658447B2 (en) * | 1997-07-08 | 2003-12-02 | Intel Corporation | Priority based simultaneous multi-threading |
| US7856633B1 (en) * | 2000-03-24 | 2010-12-21 | Intel Corporation | LRU cache replacement for a partitioned set associative cache |
| US6601120B1 (en) * | 2000-07-13 | 2003-07-29 | Silicon Graphics, Inc. | System, method and computer program product for implementing scalable multi-reader/single-writer locks |
-
2004
- 2004-10-14 US US10/965,143 patent/US7237094B2/en not_active Expired - Fee Related
-
2005
- 2005-07-08 CN CNB2005100819663A patent/CN100357884C/zh not_active Expired - Fee Related
- 2005-10-06 JP JP2005294193A patent/JP2006114036A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11272520A (ja) * | 1997-11-26 | 1999-10-08 | Digital Equip Corp <Dec> | プロセッサパイプラインにおいて多数の潜在的に同時の命令をサンプリングする装置 |
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012515386A (ja) * | 2009-01-16 | 2012-07-05 | イマジネイション テクノロジーズ リミテッド | マルチスレッド式データ処理システム |
| JP2012525620A (ja) * | 2009-04-28 | 2012-10-22 | イマジネイション テクノロジーズ リミテッド | マルチスレッドマイクロプロセッサにおける命令の発行をスケジュールするための方法及び装置 |
| CN102662632A (zh) * | 2012-03-14 | 2012-09-12 | 北京神州数码思特奇信息技术股份有限公司 | 一种利用信号量实现的序列号生成方法和生成器 |
| JP2017516215A (ja) * | 2014-05-12 | 2017-06-15 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 動的な命令ストリーム・マッピングを使用するプロセッサ・コア、プロセッサ・コアを含むコンピュータ・システム、およびプロセッサ・コアによってプログラム命令を実行する方法(動的な命令ストリーム・マッピングを使用する並列スライス・プロセッサ) |
| US10545762B2 (en) | 2014-09-30 | 2020-01-28 | International Business Machines Corporation | Independent mapping of threads |
| US11144323B2 (en) | 2014-09-30 | 2021-10-12 | International Business Machines Corporation | Independent mapping of threads |
| US10983800B2 (en) | 2015-01-12 | 2021-04-20 | International Business Machines Corporation | Reconfigurable processor with load-store slices supporting reorder and controlling access to cache slices |
| US11150907B2 (en) | 2015-01-13 | 2021-10-19 | International Business Machines Corporation | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries |
| US11734010B2 (en) | 2015-01-13 | 2023-08-22 | International Business Machines Corporation | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries |
| US12061909B2 (en) | 2015-01-13 | 2024-08-13 | International Business Machines Corporation | Parallel slice processor having a recirculating load-store queue for fast deallocation of issue queue entries |
| JP2024511764A (ja) * | 2021-03-31 | 2024-03-15 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | ウェーブフロント(wavefront)の選択及び実行 |
Also Published As
| Publication number | Publication date |
|---|---|
| US7237094B2 (en) | 2007-06-26 |
| US20060101241A1 (en) | 2006-05-11 |
| CN1760826A (zh) | 2006-04-19 |
| CN100357884C (zh) | 2007-12-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7237094B2 (en) | Instruction group formation and mechanism for SMT dispatch | |
| US8069340B2 (en) | Microprocessor with microarchitecture for efficiently executing read/modify/write memory operand instructions | |
| US7254697B2 (en) | Method and apparatus for dynamic modification of microprocessor instruction group at dispatch | |
| US7552318B2 (en) | Branch lookahead prefetch for microprocessors | |
| US8099566B2 (en) | Load/store ordering in a threaded out-of-order processor | |
| US6721874B1 (en) | Method and system for dynamically shared completion table supporting multiple threads in a processing system | |
| US6857064B2 (en) | Method and apparatus for processing events in a multithreaded processor | |
| US7603497B2 (en) | Method and apparatus to launch write queue read data in a microprocessor recovery unit | |
| US10061588B2 (en) | Tracking operand liveness information in a computer system and performing function based on the liveness information | |
| US9286072B2 (en) | Using register last use infomation to perform decode-time computer instruction optimization | |
| US11954491B2 (en) | Multi-threading microprocessor with a time counter for statically dispatching instructions | |
| US20080109640A1 (en) | Method For Changing A Thread Priority In A Simultaneous Multithread Processor | |
| US7093106B2 (en) | Register rename array with individual thread bits set upon allocation and cleared upon instruction completion | |
| US8635621B2 (en) | Method and apparatus to implement software to hardware thread priority | |
| US20130339711A1 (en) | Method and apparatus for reconstructing real program order of instructions in multi-strand out-of-order processor | |
| US20200310817A1 (en) | System, Apparatus And Method For Symbolic Store Address Generation For Data-Parallel Processor | |
| CN115454504A (zh) | 一种四发射risc-v处理器微架构及其工作方法 | |
| US20140122844A1 (en) | Intelligent context management | |
| US7194603B2 (en) | SMT flush arbitration | |
| US11392386B2 (en) | Program counter (PC)-relative load and store addressing for fused instructions | |
| US8683261B2 (en) | Out of order millicode control operation | |
| US7603543B2 (en) | Method, apparatus and program product for enhancing performance of an in-order processor with long stalls | |
| US7779234B2 (en) | System and method for implementing a hardware-supported thread assist under load lookahead mechanism for a microprocessor | |
| US10102003B2 (en) | Intelligent context management | |
| KR20000005685A (ko) | 분산인스트럭션완료로직 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080613 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090206 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090619 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20090619 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20090708 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091006 |
|
| RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20091019 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20091019 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091214 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100323 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100713 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100729 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20101228 |
|
| RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20110412 |