ATE450001T1 - Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführung - Google Patents
Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführungInfo
- Publication number
- ATE450001T1 ATE450001T1 AT05747426T AT05747426T ATE450001T1 AT E450001 T1 ATE450001 T1 AT E450001T1 AT 05747426 T AT05747426 T AT 05747426T AT 05747426 T AT05747426 T AT 05747426T AT E450001 T1 ATE450001 T1 AT E450001T1
- Authority
- AT
- Austria
- Prior art keywords
- processor
- store
- cache line
- execution
- speculative
- Prior art date
Links
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/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; 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/3824—Operand accessing
- G06F9/383—Operand prefetching
-
- 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/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Advance Control (AREA)
- Electrophonic Musical Instruments (AREA)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US58239604P | 2004-06-22 | 2004-06-22 | |
US11/083,264 US7277989B2 (en) | 2004-06-22 | 2005-03-16 | Selectively performing fetches for store operations during speculative execution |
PCT/US2005/016434 WO2006007075A2 (en) | 2004-06-22 | 2005-05-11 | Selectively performing fetches for store operations during speculative execution |
Publications (1)
Publication Number | Publication Date |
---|---|
ATE450001T1 true ATE450001T1 (de) | 2009-12-15 |
Family
ID=34969468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AT05747426T ATE450001T1 (de) | 2004-06-22 | 2005-05-11 | Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführung |
Country Status (5)
Country | Link |
---|---|
US (1) | US7277989B2 (de) |
EP (1) | EP1782184B1 (de) |
AT (1) | ATE450001T1 (de) |
DE (1) | DE602005017909D1 (de) |
WO (1) | WO2006007075A2 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5273045B2 (ja) * | 2007-06-20 | 2013-08-28 | 富士通株式会社 | バリア同期方法、装置、及びプロセッサ |
WO2013095508A1 (en) * | 2011-12-22 | 2013-06-27 | Intel Corporation | Speculative cache modification |
US10719321B2 (en) | 2015-09-19 | 2020-07-21 | Microsoft Technology Licensing, Llc | Prefetching instruction blocks |
US10949210B2 (en) | 2018-05-02 | 2021-03-16 | Micron Technology, Inc. | Shadow cache for securing conditional speculative instruction execution |
US11194582B2 (en) | 2019-07-31 | 2021-12-07 | Micron Technology, Inc. | Cache systems for main and speculative threads of processors |
US10908915B1 (en) | 2019-07-31 | 2021-02-02 | Micron Technology, Inc. | Extended tags for speculative and normal executions |
US10915326B1 (en) | 2019-07-31 | 2021-02-09 | Micron Technology, Inc. | Cache systems and circuits for syncing caches or cache sets |
US11048636B2 (en) | 2019-07-31 | 2021-06-29 | Micron Technology, Inc. | Cache with set associativity having data defined cache sets |
US11010288B2 (en) | 2019-07-31 | 2021-05-18 | Micron Technology, Inc. | Spare cache set to accelerate speculative execution, wherein the spare cache set, allocated when transitioning from non-speculative execution to speculative execution, is reserved during previous transitioning from the non-speculative execution to the speculative execution |
US11200166B2 (en) | 2019-07-31 | 2021-12-14 | Micron Technology, Inc. | Data defined caches for speculative and normal executions |
US11573802B2 (en) | 2019-10-23 | 2023-02-07 | Texas Instruments Incorporated | User mode event handling |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6065103A (en) * | 1997-12-16 | 2000-05-16 | Advanced Micro Devices, Inc. | Speculative store buffer |
US6665776B2 (en) | 2001-01-04 | 2003-12-16 | Hewlett-Packard Development Company L.P. | Apparatus and method for speculative prefetching after data cache misses |
EP1399823B1 (de) | 2001-06-26 | 2011-02-16 | Oracle America, Inc. | Verfahren zur verwendung eines l2-verzeichnisses, um spekulatives laden in einem mehrprozessorsystem zu ermöglichen |
US6925524B2 (en) * | 2003-03-20 | 2005-08-02 | Integrated Silicon Solution, Inc. | Associated content storage system |
-
2005
- 2005-03-16 US US11/083,264 patent/US7277989B2/en active Active
- 2005-05-11 EP EP05747426A patent/EP1782184B1/de active Active
- 2005-05-11 DE DE602005017909T patent/DE602005017909D1/de active Active
- 2005-05-11 AT AT05747426T patent/ATE450001T1/de not_active IP Right Cessation
- 2005-05-11 WO PCT/US2005/016434 patent/WO2006007075A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US7277989B2 (en) | 2007-10-02 |
EP1782184B1 (de) | 2009-11-25 |
EP1782184A2 (de) | 2007-05-09 |
US20060020757A1 (en) | 2006-01-26 |
DE602005017909D1 (de) | 2010-01-07 |
WO2006007075A2 (en) | 2006-01-19 |
WO2006007075A3 (en) | 2006-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ATE450001T1 (de) | Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführung | |
KR101225075B1 (ko) | 실행되는 명령의 결과를 선택적으로 커밋하는 시스템 및 방법 | |
US9009449B2 (en) | Reducing power consumption and resource utilization during miss lookahead | |
Mutlu et al. | Runahead execution: An alternative to very large instruction windows for out-of-order processors | |
JP5137948B2 (ja) | ローカル及びグローバル分岐予測情報の格納 | |
US8959320B2 (en) | Preventing update training of first predictor with mismatching second predictor for branch instructions with alternating pattern hysteresis | |
US7210024B2 (en) | Conditional instruction execution via emissary instruction for condition evaluation | |
JP5894120B2 (ja) | ゼロサイクルロード | |
KR101099203B1 (ko) | 명시적 서브루틴 호출의 브랜치 예측 동작을 에뮬레이트하기 위한 방법 및 장치 | |
US9582280B2 (en) | Branching to alternate code based on runahead determination | |
US20110320787A1 (en) | Indirect Branch Hint | |
US10261789B2 (en) | Data processing apparatus and method for controlling performance of speculative vector operations | |
JP2008530713A (ja) | 分岐予測ミスを訂正するシステムおよび方法 | |
JP2011100466A (ja) | ループ終結分岐により分岐履歴レジスタの更新を抑制すること | |
ATE484792T1 (de) | Behandlung von vordecodierungsfehlern über zweigkorrektur | |
ATE467170T1 (de) | Stromsparverfahren und -vorrichtungen für anweisungen variabler länge | |
TW200813823A (en) | Block-based branch target address cache | |
US8918626B2 (en) | Prefetching load data in lookahead mode and invalidating architectural registers instead of writing results for retiring instructions | |
US7640422B2 (en) | System for reducing number of lookups in a branch target address cache by storing retrieved BTAC addresses into instruction cache | |
Shah et al. | SPSIM: SuperScalar Processor SIMulater CS305 Project Report | |
Prémillieu et al. | SPREPI: Selective Prediction and REplay for Predicated Instructions | |
US20140372735A1 (en) | Software controlled instruction prefetch buffering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RER | Ceased as to paragraph 5 lit. 3 law introducing patent treaties |