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ührung

Info

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
Application number
AT05747426T
Other languages
English (en)
Inventor
Shailender Chaudhry
Marc Tremblay
Paul Caprioli
Original Assignee
Sun Microsystems Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Application granted granted Critical
Publication of ATE450001T1 publication Critical patent/ATE450001T1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/383Operand prefetching
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3824Operand accessing
    • G06F9/3834Maintaining memory consistency
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing 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)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Electrophonic Musical Instruments (AREA)
AT05747426T 2004-06-22 2005-05-11 Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführung ATE450001T1 (de)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008155806A1 (ja) * 2007-06-20 2008-12-24 Fujitsu Limited バリア同期方法、装置、及びマルチコアプロセッサ
US9092346B2 (en) * 2011-12-22 2015-07-28 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
US10915326B1 (en) * 2019-07-31 2021-02-09 Micron Technology, Inc. Cache systems and circuits for syncing caches or cache sets
US11194582B2 (en) 2019-07-31 2021-12-07 Micron Technology, Inc. Cache systems for main and speculative threads of processors
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
US11048636B2 (en) 2019-07-31 2021-06-29 Micron Technology, Inc. Cache with set associativity having data defined cache sets
US10908915B1 (en) 2019-07-31 2021-02-02 Micron Technology, Inc. Extended tags for speculative and normal executions
US11403110B2 (en) * 2019-10-23 2022-08-02 Texas Instruments Incorporated Storing a result of a first instruction of an execute packet in a holding register prior to completion of a second instruction of the execute packet

Family Cites Families (4)

* Cited by examiner, † Cited by third party
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
WO2003001383A2 (en) 2001-06-26 2003-01-03 Sun Microsystems, Inc. Using an l2 directory to facilitate speculative loads in a multiprocessor system
US6925524B2 (en) * 2003-03-20 2005-08-02 Integrated Silicon Solution, Inc. Associated content storage system

Also Published As

Publication number Publication date
US20060020757A1 (en) 2006-01-26
DE602005017909D1 (de) 2010-01-07
WO2006007075A2 (en) 2006-01-19
WO2006007075A3 (en) 2006-09-21
EP1782184B1 (de) 2009-11-25
US7277989B2 (en) 2007-10-02
EP1782184A2 (de) 2007-05-09

Similar Documents

Publication Publication Date Title
CN102934075B (zh) 用于使用预先通知技术改变程序的顺序流程的方法和设备
KR101225075B1 (ko) 실행되는 명령의 결과를 선택적으로 커밋하는 시스템 및 방법
US9009449B2 (en) Reducing power consumption and resource utilization during miss lookahead
US8959320B2 (en) Preventing update training of first predictor with mismatching second predictor for branch instructions with alternating pattern hysteresis
JP5137948B2 (ja) ローカル及びグローバル分岐予測情報の格納
JP4763727B2 (ja) 分岐予測ミスを訂正するシステムおよび方法
CN101160561B (zh) 通过循环结束分支来抑制分支历史寄存器的更新
KR101099203B1 (ko) 명시적 서브루틴 호출의 브랜치 예측 동작을 에뮬레이트하기 위한 방법 및 장치
US9582280B2 (en) Branching to alternate code based on runahead determination
US7210024B2 (en) Conditional instruction execution via emissary instruction for condition evaluation
US10261789B2 (en) Data processing apparatus and method for controlling performance of speculative vector operations
TW200813823A (en) Block-based branch target address cache
ATE450001T1 (de) Selektives durchführen von abrufvorgängen für speicheroperationen während der spekulativen ausführung
EP2776919B1 (de) Reduzierung von hardwarekosten zur unterstützung eines fehlgeschlagenen vorgriffs
ATE484792T1 (de) Behandlung von vordecodierungsfehlern über zweigkorrektur
ATE467170T1 (de) Stromsparverfahren und -vorrichtungen für anweisungen variabler länge
CN114610391A (zh) 一种risc-v向量处理器的数据加载方法及相关装置
Prémillieu et al. SPREPI: Selective Prediction and REplay for Predicated Instructions
Shah et al. SPSIM: SuperScalar Processor SIMulater CS305 Project Report
US20140372735A1 (en) Software controlled instruction prefetch buffering
HK1112087A (en) Conditional instruction execution via emissary instruction for condition evaluation

Legal Events

Date Code Title Description
RER Ceased as to paragraph 5 lit. 3 law introducing patent treaties