SG11201704300TA - Systems, apparatuses, and methods for data speculation execution - Google Patents
Systems, apparatuses, and methods for data speculation executionInfo
- Publication number
- SG11201704300TA SG11201704300TA SG11201704300TA SG11201704300TA SG11201704300TA SG 11201704300T A SG11201704300T A SG 11201704300TA SG 11201704300T A SG11201704300T A SG 11201704300TA SG 11201704300T A SG11201704300T A SG 11201704300TA SG 11201704300T A SG11201704300T A SG 11201704300TA
- Authority
- SG
- Singapore
- Prior art keywords
- apparatuses
- systems
- methods
- data speculation
- speculation execution
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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, look ahead
- G06F9/3824—Operand accessing
- G06F9/3834—Maintaining memory consistency
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30065—Loop control instructions; iterative instructions, e.g. LOOP, REPEAT
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/30087—Synchronisation or serialisation instructions
-
- 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, 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, 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
-
- 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
- G06F9/528—Mutual exclusion algorithms by using speculative mechanisms
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/582,717 US10303525B2 (en) | 2014-12-24 | 2014-12-24 | Systems, apparatuses, and methods for data speculation execution |
PCT/US2015/062249 WO2016105786A1 (en) | 2014-12-24 | 2015-11-24 | Systems, apparatuses, and methods for data speculation execution |
Publications (1)
Publication Number | Publication Date |
---|---|
SG11201704300TA true SG11201704300TA (en) | 2017-07-28 |
Family
ID=56151336
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SG11201704300TA SG11201704300TA (en) | 2014-12-24 | 2015-11-24 | Systems, apparatuses, and methods for data speculation execution |
Country Status (9)
Country | Link |
---|---|
US (1) | US10303525B2 (en) |
EP (1) | EP3238032A4 (en) |
JP (1) | JP6867082B2 (en) |
KR (1) | KR102453594B1 (en) |
CN (1) | CN107003853B (en) |
BR (1) | BR112017011104A2 (en) |
SG (1) | SG11201704300TA (en) |
TW (1) | TWI657371B (en) |
WO (1) | WO2016105786A1 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10387156B2 (en) | 2014-12-24 | 2019-08-20 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10061583B2 (en) | 2014-12-24 | 2018-08-28 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10942744B2 (en) | 2014-12-24 | 2021-03-09 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10061589B2 (en) | 2014-12-24 | 2018-08-28 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10387158B2 (en) | 2014-12-24 | 2019-08-20 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
WO2017086983A1 (en) * | 2015-11-19 | 2017-05-26 | Hewlett Packard Enterprise Development Lp | Prediction models for concurrency control types |
GB2554096B (en) * | 2016-09-20 | 2019-03-20 | Advanced Risc Mach Ltd | Handling of inter-element address hazards for vector instructions |
CN107506329B (en) * | 2017-08-18 | 2018-06-19 | 浙江大学 | A kind of coarse-grained reconfigurable array and its configuration method of automatic support loop iteration assembly line |
CN113168371A (en) * | 2018-12-11 | 2021-07-23 | 华为技术有限公司 | Write-write collision detection for multi-master shared storage databases |
CN114489518B (en) * | 2022-03-28 | 2022-09-09 | 山东大学 | Sequencing data quality control method and system |
Family Cites Families (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4864930A (en) | 1985-05-09 | 1989-09-12 | Graphics Microsystems, Inc. | Ink control system |
US5511172A (en) | 1991-11-15 | 1996-04-23 | Matsushita Electric Co. Ind, Ltd. | Speculative execution processor |
EP0583089B1 (en) | 1992-08-12 | 2000-01-26 | Advanced Micro Devices, Inc. | Instruction decoder |
EP0815507B1 (en) | 1995-02-14 | 2013-06-12 | Fujitsu Limited | Structure and method for high-performance speculative execution processor providing special features |
US5872947A (en) | 1995-10-24 | 1999-02-16 | Advanced Micro Devices, Inc. | Instruction classification circuit configured to classify instructions into a plurality of instruction types prior to decoding said instructions |
KR100203131B1 (en) | 1996-06-24 | 1999-06-15 | 김영환 | A method for forming super low junction of semiconductor device |
US6128703A (en) | 1997-09-05 | 2000-10-03 | Integrated Device Technology, Inc. | Method and apparatus for memory prefetch operation of volatile non-coherent data |
US6640315B1 (en) | 1999-06-26 | 2003-10-28 | Board Of Trustees Of The University Of Illinois | Method and apparatus for enhancing instruction level parallelism |
US6748589B1 (en) | 1999-10-20 | 2004-06-08 | Transmeta Corporation | Method for increasing the speed of speculative execution |
US6629234B1 (en) | 2000-03-30 | 2003-09-30 | Ip. First, L.L.C. | Speculative generation at address generation stage of previous instruction result stored in forward cache for use by succeeding address dependent instruction |
US6854048B1 (en) | 2001-08-08 | 2005-02-08 | Sun Microsystems | Speculative execution control with programmable indicator and deactivation of multiaccess recovery mechanism |
US7117347B2 (en) | 2001-10-23 | 2006-10-03 | Ip-First, Llc | Processor including fallback branch prediction mechanism for far jump and far call instructions |
US6845442B1 (en) | 2002-04-30 | 2005-01-18 | Advanced Micro Devices, Inc. | System and method of using speculative operand sources in order to speculatively bypass load-store operations |
US6950925B1 (en) | 2002-08-28 | 2005-09-27 | Advanced Micro Devices, Inc. | Scheduler for use in a microprocessor that supports data-speculative execution |
US20040049657A1 (en) * | 2002-09-10 | 2004-03-11 | Kling Ralph M. | Extended register space apparatus and methods for processors |
TWI231450B (en) | 2002-10-22 | 2005-04-21 | Ip First Llc | Processor including fallback branch prediction mechanism for far jump and far call instructions |
US6862664B2 (en) | 2003-02-13 | 2005-03-01 | Sun Microsystems, Inc. | Method and apparatus for avoiding locks by speculatively executing critical sections |
US20040163082A1 (en) | 2003-02-13 | 2004-08-19 | Marc Tremblay | Commit instruction to support transactional program execution |
US7363470B2 (en) | 2003-05-02 | 2008-04-22 | Advanced Micro Devices, Inc. | System and method to prevent in-flight instances of operations from disrupting operation replay within a data-speculative microprocessor |
US7185323B2 (en) | 2003-05-16 | 2007-02-27 | Sun Microsystems, Inc. | Using value speculation to break constraining dependencies in iterative control flow structures |
US7500087B2 (en) | 2004-03-09 | 2009-03-03 | Intel Corporation | Synchronization of parallel processes using speculative execution of synchronization instructions |
US20070006195A1 (en) | 2004-03-31 | 2007-01-04 | Christof Braun | Method and structure for explicit software control of data speculation |
TWI305323B (en) | 2004-08-23 | 2009-01-11 | Faraday Tech Corp | Method for verification branch prediction mechanisms and readable recording medium for storing program thereof |
US7856537B2 (en) | 2004-09-30 | 2010-12-21 | Intel Corporation | Hybrid hardware and software implementation of transactional memory access |
US20070118696A1 (en) | 2005-11-22 | 2007-05-24 | Intel Corporation | Register tracking for speculative prefetching |
US7404041B2 (en) | 2006-02-10 | 2008-07-22 | International Business Machines Corporation | Low complexity speculative multithreading system based on unmodified microprocessor core |
CN100568173C (en) * | 2006-09-01 | 2009-12-09 | 上海大学 | Adjustment for multiple micro-controller system task |
US7711678B2 (en) * | 2006-11-17 | 2010-05-04 | Microsoft Corporation | Software transaction commit order and conflict management |
EP2115583A2 (en) | 2007-01-30 | 2009-11-11 | Nema Labs Ab | Speculative throughput computing |
JP5154119B2 (en) | 2007-03-26 | 2013-02-27 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Processor |
US9075622B2 (en) | 2008-01-23 | 2015-07-07 | Arm Limited | Reducing errors in pre-decode caches |
CN101546282B (en) * | 2008-03-28 | 2011-05-18 | 国际商业机器公司 | Method and device used for writing and copying in processor |
US8739141B2 (en) | 2008-05-19 | 2014-05-27 | Oracle America, Inc. | Parallelizing non-countable loops with hardware transactional memory |
US9372718B2 (en) | 2008-07-28 | 2016-06-21 | Advanced Micro Devices, Inc. | Virtualizable advanced synchronization facility |
US9569254B2 (en) | 2009-07-28 | 2017-02-14 | International Business Machines Corporation | Automatic checkpointing and partial rollback in software transaction memory |
US20120227045A1 (en) | 2009-12-26 | 2012-09-06 | Knauth Laura A | Method, apparatus, and system for speculative execution event counter checkpointing and restoring |
US8438571B2 (en) | 2010-02-24 | 2013-05-07 | International Business Machines Corporation | Thread speculative execution and asynchronous conflict |
CN101872299B (en) * | 2010-07-06 | 2013-05-01 | 浙江大学 | Conflict prediction realizing method and conflict prediction processing device used by transaction memory |
US20120079245A1 (en) | 2010-09-25 | 2012-03-29 | Cheng Wang | Dynamic optimization for conditional commit |
WO2013085518A1 (en) | 2011-12-08 | 2013-06-13 | Intel Corporation | A method, apparatus, and system for efficiently handling multiple virtual address mappings during transactional execution |
CN102725741B (en) * | 2011-12-31 | 2014-11-05 | 华为技术有限公司 | Method, device, and system for controlling cache |
US9268596B2 (en) | 2012-02-02 | 2016-02-23 | Intel Corparation | Instruction and logic to test transactional execution status |
US20140059333A1 (en) | 2012-02-02 | 2014-02-27 | Martin G. Dixon | Method, apparatus, and system for speculative abort control mechanisms |
US20150032998A1 (en) * | 2012-02-02 | 2015-01-29 | Ravi Rajwar | Method, apparatus, and system for transactional speculation control instructions |
US9652242B2 (en) | 2012-05-02 | 2017-05-16 | Apple Inc. | Apparatus for predicate calculation in processor instruction set |
US9348642B2 (en) | 2012-06-15 | 2016-05-24 | International Business Machines Corporation | Transaction begin/end instructions |
US9298631B2 (en) | 2012-06-15 | 2016-03-29 | International Business Machines Corporation | Managing transactional and non-transactional store observability |
US8688661B2 (en) * | 2012-06-15 | 2014-04-01 | International Business Machines Corporation | Transactional processing |
US9811340B2 (en) | 2012-06-18 | 2017-11-07 | Intel Corporation | Method and apparatus for reconstructing real program order of instructions in multi-strand out-of-order processor |
US9396115B2 (en) | 2012-08-02 | 2016-07-19 | International Business Machines Corporation | Rewind only transactions in a data processing system supporting transactional storage accesses |
US9367471B2 (en) | 2012-09-10 | 2016-06-14 | Apple Inc. | Fetch width predictor |
GB2519107B (en) * | 2013-10-09 | 2020-05-13 | Advanced Risc Mach Ltd | A data processing apparatus and method for performing speculative vector access operations |
US9262206B2 (en) | 2014-02-27 | 2016-02-16 | International Business Machines Corporation | Using the transaction-begin instruction to manage transactional aborts in transactional memory computing environments |
US9454370B2 (en) | 2014-03-14 | 2016-09-27 | International Business Machines Corporation | Conditional transaction end instruction |
US20160357556A1 (en) | 2014-12-24 | 2016-12-08 | Elmoustapha Ould-Ahmed-Vall | Systems, apparatuses, and methods for data speculation execution |
US10387156B2 (en) | 2014-12-24 | 2019-08-20 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US9785442B2 (en) | 2014-12-24 | 2017-10-10 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10061583B2 (en) * | 2014-12-24 | 2018-08-28 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10387158B2 (en) | 2014-12-24 | 2019-08-20 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
US10061589B2 (en) | 2014-12-24 | 2018-08-28 | Intel Corporation | Systems, apparatuses, and methods for data speculation execution |
-
2014
- 2014-12-24 US US14/582,717 patent/US10303525B2/en active Active
-
2015
- 2015-11-23 TW TW104138794A patent/TWI657371B/en active
- 2015-11-24 EP EP15873991.2A patent/EP3238032A4/en not_active Ceased
- 2015-11-24 SG SG11201704300TA patent/SG11201704300TA/en unknown
- 2015-11-24 BR BR112017011104A patent/BR112017011104A2/en not_active Application Discontinuation
- 2015-11-24 KR KR1020177014244A patent/KR102453594B1/en active IP Right Grant
- 2015-11-24 WO PCT/US2015/062249 patent/WO2016105786A1/en active Application Filing
- 2015-11-24 CN CN201580064697.1A patent/CN107003853B/en active Active
- 2015-11-24 JP JP2017526678A patent/JP6867082B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2016105786A1 (en) | 2016-06-30 |
JP2017539008A (en) | 2017-12-28 |
US20160188382A1 (en) | 2016-06-30 |
JP6867082B2 (en) | 2021-04-28 |
EP3238032A1 (en) | 2017-11-01 |
BR112017011104A2 (en) | 2017-12-26 |
TWI657371B (en) | 2019-04-21 |
KR20170098803A (en) | 2017-08-30 |
KR102453594B1 (en) | 2022-10-12 |
CN107003853B (en) | 2020-12-22 |
TW201643700A (en) | 2016-12-16 |
EP3238032A4 (en) | 2018-08-15 |
CN107003853A (en) | 2017-08-01 |
US10303525B2 (en) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
HK1218358A1 (en) | Method, device and system for obtaining data resource | |
GB2531402B (en) | Data processing systems | |
SG11201608945WA (en) | Secure data interaction method and system | |
SG11201704316YA (en) | Methods and apparatuses for haptic systems | |
GB2525003B (en) | Data Processing Systems | |
SG11201704300TA (en) | Systems, apparatuses, and methods for data speculation execution | |
GB2540329B (en) | Methods and systems for forwarding data | |
SG11201701570RA (en) | Data packet processing methods, systems, and apparatus | |
GB2533992B (en) | Apparatus, systems, and methods for providing a memory efficient cache | |
HK1206456A1 (en) | Task execution method, apparatus and system | |
GB2529740B (en) | Data processing systems | |
GB201502033D0 (en) | Methods and systems for analyzing healthcare data | |
EP3238047A4 (en) | Systems, apparatuses, and methods for data speculation execution | |
GB201517729D0 (en) | Data systems, devices and methods | |
HK1249977A1 (en) | Methods and systems for a personal data sharing app | |
HK1213385A1 (en) | Method, device and system for transmitting data | |
ZA201701550B (en) | Information processing device, information processing method, and program | |
ZA201700280B (en) | Information processing device, information processing method, and program | |
GB2525002B (en) | Data processing systems | |
GB201404100D0 (en) | Method and system for creating reference data | |
EP3079339A4 (en) | Method, device, and esb system for data processing | |
HK1255058A1 (en) | Systems, devices, and methods for interactions with an account | |
EP3091762A4 (en) | Downlink data processing method, device and system | |
GB201403896D0 (en) | Data processing systems and methods | |
SG11201609413WA (en) | Method and system for data processing |