JP2016512908A - コンテキスト依存性命令のための性能最適化 - Google Patents
コンテキスト依存性命令のための性能最適化 Download PDFInfo
- Publication number
- JP2016512908A JP2016512908A JP2016503240A JP2016503240A JP2016512908A JP 2016512908 A JP2016512908 A JP 2016512908A JP 2016503240 A JP2016503240 A JP 2016503240A JP 2016503240 A JP2016503240 A JP 2016503240A JP 2016512908 A JP2016512908 A JP 2016512908A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- entry
- current value
- write
- value
- 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/30098—Register arrangements
-
- 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/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 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/3842—Speculative instruction execution
-
- 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/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/841,576 US9823929B2 (en) | 2013-03-15 | 2013-03-15 | Optimizing performance for context-dependent instructions |
| US13/841,576 | 2013-03-15 | ||
| PCT/US2014/029876 WO2014145160A1 (en) | 2013-03-15 | 2014-03-14 | Optimizing performance for context-dependent instructions |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016512908A true JP2016512908A (ja) | 2016-05-09 |
| JP2016512908A5 JP2016512908A5 (enExample) | 2017-03-30 |
Family
ID=50629006
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016503240A Pending JP2016512908A (ja) | 2013-03-15 | 2014-03-14 | コンテキスト依存性命令のための性能最適化 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US9823929B2 (enExample) |
| EP (1) | EP2972790A1 (enExample) |
| JP (1) | JP2016512908A (enExample) |
| KR (1) | KR20150132242A (enExample) |
| CN (1) | CN105190540B (enExample) |
| WO (1) | WO2014145160A1 (enExample) |
Families Citing this family (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9298456B2 (en) * | 2012-08-21 | 2016-03-29 | Apple Inc. | Mechanism for performing speculative predicated instructions |
| US9817663B2 (en) | 2013-03-19 | 2017-11-14 | Apple Inc. | Enhanced Macroscalar predicate operations |
| US9348589B2 (en) | 2013-03-19 | 2016-05-24 | Apple Inc. | Enhanced predicate registers having predicates corresponding to element widths |
| US10684859B2 (en) * | 2016-09-19 | 2020-06-16 | Qualcomm Incorporated | Providing memory dependence prediction in block-atomic dataflow architectures |
| US10360036B2 (en) | 2017-07-12 | 2019-07-23 | International Business Machines Corporation | Cracked execution of move-to-FPSCR instructions |
| US10592246B2 (en) * | 2017-07-12 | 2020-03-17 | International Business Machines Corporation | Low latency execution of floating-point record form instructions |
| US11068612B2 (en) | 2018-08-01 | 2021-07-20 | International Business Machines Corporation | Microarchitectural techniques to mitigate cache-based data security vulnerabilities |
| US11868777B2 (en) | 2020-12-16 | 2024-01-09 | Advanced Micro Devices, Inc. | Processor-guided execution of offloaded instructions using fixed function operations |
| US12073251B2 (en) * | 2020-12-29 | 2024-08-27 | Advanced Micro Devices, Inc. | Offloading computations from a processor to remote execution logic |
| US12197378B2 (en) | 2022-06-01 | 2025-01-14 | Advanced Micro Devices, Inc. | Method and apparatus to expedite system services using processing-in-memory (PIM) |
| US12050531B2 (en) | 2022-09-26 | 2024-07-30 | Advanced Micro Devices, Inc. | Data compression and decompression for processing in memory |
| US12147338B2 (en) | 2022-12-27 | 2024-11-19 | Advanced Micro Devices, Inc. | Leveraging processing in memory registers as victim buffers |
| US12265470B1 (en) | 2023-09-29 | 2025-04-01 | Advanced Micro Devices, Inc. | Bypassing cache directory lookups for processing-in-memory instructions |
| US12455826B2 (en) | 2024-03-29 | 2025-10-28 | Advanced Micro Devices, Inc. | Dynamic caching policies for processing-in-memory |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050033946A1 (en) * | 2003-08-06 | 2005-02-10 | Abadallah Mohammad A. | Virtual prediction for control registers in a speculatively executing machine |
| US20100205406A1 (en) * | 2009-02-11 | 2010-08-12 | Via Technologies, Inc.. | Out-of-order execution microprocessor that speculatively executes dependent memory access instructions by predicting no value change by older instructions that load a segment register |
Family Cites Families (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0649086B1 (en) | 1993-10-18 | 2000-07-19 | National Semiconductor Corporation | Microprocessor with speculative execution |
| US5742840A (en) * | 1995-08-16 | 1998-04-21 | Microunity Systems Engineering, Inc. | General purpose, multiple precision parallel operation, programmable media processor |
| US5854921A (en) | 1995-08-31 | 1998-12-29 | Advanced Micro Devices, Inc. | Stride-based data address prediction structure |
| US6405305B1 (en) | 1999-09-10 | 2002-06-11 | Advanced Micro Devices, Inc. | Rapid execution of floating point load control word instructions |
| US6983358B2 (en) * | 2001-10-23 | 2006-01-03 | Ip-First, Llc | Method and apparatus for maintaining status coherency between queue-separated functional units |
| US7093111B2 (en) | 2003-07-31 | 2006-08-15 | International Business Machines Corporation | Recovery of global history vector in the event of a non-branch flush |
| US7500087B2 (en) | 2004-03-09 | 2009-03-03 | Intel Corporation | Synchronization of parallel processes using speculative execution of synchronization instructions |
| JP5326374B2 (ja) * | 2008-06-19 | 2013-10-30 | 富士通セミコンダクター株式会社 | プロセッサ、性能プロファイリング装置、性能プロファイリングプログラムおよび性能プロファイリング方法 |
| JP5526626B2 (ja) * | 2009-06-30 | 2014-06-18 | 富士通株式会社 | 演算処理装置およびアドレス変換方法 |
| US20110047358A1 (en) | 2009-08-19 | 2011-02-24 | International Business Machines Corporation | In-Data Path Tracking of Floating Point Exceptions and Store-Based Exception Indication |
| US8819397B2 (en) | 2011-03-01 | 2014-08-26 | Advanced Micro Devices, Inc. | Processor with increased efficiency via control word prediction |
-
2013
- 2013-03-15 US US13/841,576 patent/US9823929B2/en not_active Expired - Fee Related
-
2014
- 2014-03-14 CN CN201480013934.7A patent/CN105190540B/zh not_active Expired - Fee Related
- 2014-03-14 KR KR1020157027770A patent/KR20150132242A/ko not_active Withdrawn
- 2014-03-14 JP JP2016503240A patent/JP2016512908A/ja active Pending
- 2014-03-14 EP EP14720845.8A patent/EP2972790A1/en not_active Withdrawn
- 2014-03-14 WO PCT/US2014/029876 patent/WO2014145160A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050033946A1 (en) * | 2003-08-06 | 2005-02-10 | Abadallah Mohammad A. | Virtual prediction for control registers in a speculatively executing machine |
| US20100205406A1 (en) * | 2009-02-11 | 2010-08-12 | Via Technologies, Inc.. | Out-of-order execution microprocessor that speculatively executes dependent memory access instructions by predicting no value change by older instructions that load a segment register |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2014145160A1 (en) | 2014-09-18 |
| CN105190540A (zh) | 2015-12-23 |
| US20140281405A1 (en) | 2014-09-18 |
| KR20150132242A (ko) | 2015-11-25 |
| US9823929B2 (en) | 2017-11-21 |
| EP2972790A1 (en) | 2016-01-20 |
| CN105190540B (zh) | 2018-04-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9823929B2 (en) | Optimizing performance for context-dependent instructions | |
| US9436470B2 (en) | Restoring a register renaming map | |
| US9672044B2 (en) | Space efficient checkpoint facility and technique for processor with integrally indexed register mapping and free-list arrays | |
| US9678758B2 (en) | Coprocessor for out-of-order loads | |
| US20160350116A1 (en) | Mitigating wrong-path effects in branch prediction | |
| CN113196244B (zh) | 宏操作融合 | |
| CN103488464B (zh) | 微处理器以及微处理器操作方法 | |
| US20140006752A1 (en) | Qualifying Software Branch-Target Hints with Hardware-Based Predictions | |
| US20170123798A1 (en) | Hardware-based run-time mitigation of blocks having multiple conditional branches | |
| US9268575B2 (en) | Flush operations in a processor | |
| US20190004805A1 (en) | Multi-tagged branch prediction table | |
| US11803388B2 (en) | Apparatus and method for predicting source operand values and optimized processing of instructions | |
| EP3230851A1 (en) | Providing early instruction execution in an out-of-order (ooo) processor, and related apparatuses, methods, and computer-readable media | |
| JP6352386B2 (ja) | 定数キャッシュを使用してより効率的にリテラル生成データを従属命令に転送するための方法および装置 | |
| CN107209662B (zh) | 指令的相依性预测 | |
| US9588769B2 (en) | Processor that leapfrogs MOV instructions | |
| CN104615409B (zh) | 跳越mov指令的处理器和由该处理器使用的方法 | |
| CN113703842B (zh) | 一种基于分支预测的值预测方法、装置及介质 | |
| US10310862B2 (en) | Data processing | |
| US11086626B2 (en) | Circuitry and methods | |
| WO2017072615A1 (en) | Hardware-based run-time mitigation of conditional branches | |
| KR20140070308A (ko) | 병렬 처리를 위한 재구성형 프로세서 및 재구성형 프로세서의 동작 방법 |
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: 20170224 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180329 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180409 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20181105 |