JP2016512908A5 - - Google Patents

Download PDF

Info

Publication number
JP2016512908A5
JP2016512908A5 JP2016503240A JP2016503240A JP2016512908A5 JP 2016512908 A5 JP2016512908 A5 JP 2016512908A5 JP 2016503240 A JP2016503240 A JP 2016503240A JP 2016503240 A JP2016503240 A JP 2016503240A JP 2016512908 A5 JP2016512908 A5 JP 2016512908A5
Authority
JP
Japan
Prior art keywords
instruction
entry
current value
processing
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
Application number
JP2016503240A
Other languages
English (en)
Other versions
JP2016512908A (ja
Filing date
Publication date
Priority claimed from US13/841,576 external-priority patent/US9823929B2/en
Application filed filed Critical
Publication of JP2016512908A publication Critical patent/JP2016512908A/ja
Publication of JP2016512908A5 publication Critical patent/JP2016512908A5/ja
Pending legal-status Critical Current

Links

Claims (14)

  1. レジスタフィールドの現在値により決定されるコンテキスト内で命令を処理するステップであって、前記命令が書込み命令に依存し、前記書込み命令が前記レジスタフィールドに設定値を書き込むためのものであり、前記書込み命令を実行する前に前記命令が処理される、ステップと、
    前記命令を待ち行列の中のエントリに記憶するステップと、
    前記レジスタフィールドの前記現在値を前記エントリに記憶するステップと、
    前記書込み命令を実行した後で、前記エントリを求めて前記待ち行列を検索するステップと、
    前記書込み命令を実行した後で、前記エントリに記憶された前記現在値を前記設定値と比較するステップと
    を含む、方法。
  2. 前記エントリに記憶された前記現在値が前記設定値と一致しない場合に、すべてのインフライト命令のパイプラインをフラッシュかつプログラムカウンタをプログラムの順番で前記書込み命令後の次の命令のアドレスに設定するステッ
    をさらに含む、請求項1に記載の方法。
  3. 前記命令を処理するステップが
    前記現在値が第1の値である場合、前記命令を定義済みとして処理するステップと、
    前記現在値が前記第1の値でない場合、前記命令を未定義として処理するステップと
    をさらに含む、請求項2に記載の方法。
  4. 前記エントリに記憶された前記現在値が前記設定値と一致しない場合に、前記命令およびプログラムの順番で前記命令に続くすべてのインフライト命令のパイプラインをフラッシュかつプログラムカウンタを前記命令のアドレスに設定するステッ
    をさらに含む、請求項1に記載の方法。
  5. プロセッサの状態情報を前記エントリに記憶するステップであって、前記状態情報が前記命令が処理される時点のものである、ステップと、
    前記エントリに記憶される前記現在値が前記設定値と一致しない場合、前記エントリから前記状態情報を取り出して、前記状態情報により示される状態に前記プロセッサを回復するステップと
    をさらに含む、請求項4に記載の方法。
  6. 前記命令を処理するステップが
    前記現在値が第1の値である場合、前記命令を定義済みとして処理するステップと、
    前記現在値が前記第1の値でない場合、前記命令を未定義として処理するステップと
    をさらに含む、請求項1に記載の方法。
  7. 前記命令がコミットするとき、前記エントリを前記待ち行列から除去するステップ
    をさらに含む、請求項1に記載の方法。
  8. レジスタフィールドの現在値により決定されるコンテキスト内で命令を処理するための手段であって、前記命令が書込み命令に依存し、前記書込み命令が前記レジスタフィールドに設定値を書き込むためのものであり、前記書込み命令を実行する前に前記命令が処理される、手段と、
    前記命令を待ち行列の中のエントリに記憶するための手段と、
    前記レジスタフィールドの前記現在値を前記エントリに記憶するための手段と、
    前記書込み命令を実行した後で、前記エントリを求めて前記待ち行列を検索するための手段と、
    前記書込み命令を実行した後で、前記エントリに記憶された前記現在値を前記設定値と比較するための手段と
    を備える、装置。
  9. プロセッサの状態情報を前記エントリに記憶するための手段であって、前記状態情報が前記命令が処理される時点のものである、手段と、
    前記エントリに記憶される前記現在値が前記設定値と一致しない場合、前記エントリから前記状態情報を取り出すための手段と、前記状態情報により示される状態に前記プロセッサを回復するための手段と
    をさらに備える、請求項8に記載の装置。
  10. 前記命令を処理するための手段が、
    前記現在値が第1の値である場合、前記命令を定義済みとして処理するための手段と、
    前記現在値が前記第1の値でない場合、前記命令を未定義として処理するための手段とをさらに備える、請求項8に記載の装置。
  11. 前記命令がコミットするとき、前記エントリを前記待ち行列から除去するための手段
    をさらに備える、請求項8に記載の装置。
  12. プロセッサを備え、前記プロセッサは、
    フィールドを有するレジスタと、
    待ち行列と、
    パイプラインと
    をさらに備え、
    前記命令を処理するための手段、前記命令を待ち行列の中のエントリに記憶するための手段、前記レジスタフィールドの前記現在値を前記エントリに記憶するための手段、前記書込み命令を実行した後で、前記エントリを求めて前記待ち行列を検索するための手段、および前記書込み命令を実行した後で、前記エントリに記憶された前記現在値を前記設定値と比較するための手段が、コントローラを備える、請求項8に記載の装置。
  13. プログラムカウンタをさらに備える、請求項12に記載の装置
  14. コントローラによって実行されたとき、前記コントローラに請求項1〜7のいずれか一項に記載の方法を実施させる命令を記憶した非一時的コンピュータ可読記録媒体
JP2016503240A 2013-03-15 2014-03-14 コンテキスト依存性命令のための性能最適化 Pending JP2016512908A (ja)

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 JP2016512908A (ja) 2016-05-09
JP2016512908A5 true JP2016512908A5 (ja) 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 (ja)
EP (1) EP2972790A1 (ja)
JP (1) JP2016512908A (ja)
KR (1) KR20150132242A (ja)
CN (1) CN105190540B (ja)
WO (1) WO2014145160A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298456B2 (en) * 2012-08-21 2016-03-29 Apple Inc. Mechanism for performing speculative predicated instructions
US9348589B2 (en) 2013-03-19 2016-05-24 Apple Inc. Enhanced predicate registers having predicates corresponding to element widths
US9817663B2 (en) 2013-03-19 2017-11-14 Apple Inc. Enhanced Macroscalar predicate operations
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
US20220206855A1 (en) * 2020-12-29 2022-06-30 Advanced Micro Devices, Inc. Offloading computations from a processor to remote execution logic

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69425311T2 (de) 1993-10-18 2001-03-15 Nat Semiconductor Corp Mikroprozessor mit spekulativer Befehlsausführung
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
US7249243B2 (en) * 2003-08-06 2007-07-24 Intel Corporation Control word prediction and varying recovery upon comparing actual to set of stored words
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 富士通セミコンダクター株式会社 プロセッサ、性能プロファイリング装置、性能プロファイリングプログラムおよび性能プロファイリング方法
US8880854B2 (en) 2009-02-11 2014-11-04 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
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

Similar Documents

Publication Publication Date Title
JP2016512908A5 (ja)
US20150339123A1 (en) Restoring a Register Renaming Map
JP2014199583A5 (ja)
JP2016513300A5 (ja)
JP2016522910A5 (ja)
JP2018515822A5 (ja)
JP2018500710A5 (ja)
JP2016503216A5 (ja)
JP2013229019A5 (ja) プロセッサ
JP2017535854A5 (ja)
JP2016508275A5 (ja)
JP2016513845A5 (ja)
JP2017528028A5 (ja)
JP2011512590A5 (ja)
JP2013545207A5 (ja)
JP2015201216A5 (ja)
JP2012168815A5 (ja)
JP2014511526A5 (ja)
JP2016515262A5 (ja)
EP2879054A3 (en) Communication control device, information processing apparatus, parallel computer system, and control method for parallel computer system
RU2015142983A (ru) Принудительное создание события элемента управления
JP2016505972A5 (ja)
JP2016534430A5 (ja)
JP2018524689A5 (ja)
JP2014026646A5 (ja) 情報処理装置