GB2570110B - Speculative cache storage region - Google Patents
Speculative cache storage region Download PDFInfo
- Publication number
- GB2570110B GB2570110B GB1800357.4A GB201800357A GB2570110B GB 2570110 B GB2570110 B GB 2570110B GB 201800357 A GB201800357 A GB 201800357A GB 2570110 B GB2570110 B GB 2570110B
- Authority
- GB
- United Kingdom
- Prior art keywords
- storage region
- cache storage
- speculative cache
- speculative
- region
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
- G06F12/0848—Partitioned cache, e.g. separate instruction and operand caches
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0888—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/126—Replacement control using replacement algorithms with special data handling, e.g. priority of data or instructions, handling errors or pinning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/128—Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
- G06F12/1491—Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/75—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by inhibiting the analysis of circuitry or operation
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
- G06F9/30047—Prefetch instructions; cache control instructions
-
- 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/30196—Instruction operation extension or modification using decoder, e.g. decoder per instruction set, adaptable or programmable decoders
-
- 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/50—Control mechanisms for virtual memory, cache or TLB
- G06F2212/507—Control mechanisms for virtual memory, cache or TLB using speculative control
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Advance Control (AREA)
Priority Applications (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB1800357.4A GB2570110B (en) | 2018-01-10 | 2018-01-10 | Speculative cache storage region |
| KR1020207021153A KR102746185B1 (en) | 2018-01-10 | 2018-08-30 | Speculative cache memory area |
| US16/959,280 US11461243B2 (en) | 2018-01-10 | 2018-08-30 | Speculative cache storage region |
| PCT/GB2018/052449 WO2019138206A1 (en) | 2018-01-10 | 2018-08-30 | Speculative cache storage region |
| JP2020537167A JP7228592B2 (en) | 2018-01-10 | 2018-08-30 | speculative cache storage |
| CN201880084565.9A CN111527479B (en) | 2018-01-10 | 2018-08-30 | Data processing device and method |
| EP18765999.0A EP3738041B1 (en) | 2018-01-10 | 2018-08-30 | Speculative cache storage region |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB1800357.4A GB2570110B (en) | 2018-01-10 | 2018-01-10 | Speculative cache storage region |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| GB201800357D0 GB201800357D0 (en) | 2018-02-21 |
| GB2570110A GB2570110A (en) | 2019-07-17 |
| GB2570110B true GB2570110B (en) | 2020-04-15 |
Family
ID=61190395
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| GB1800357.4A Active GB2570110B (en) | 2018-01-10 | 2018-01-10 | Speculative cache storage region |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US11461243B2 (en) |
| EP (1) | EP3738041B1 (en) |
| JP (1) | JP7228592B2 (en) |
| KR (1) | KR102746185B1 (en) |
| CN (1) | CN111527479B (en) |
| GB (1) | GB2570110B (en) |
| WO (1) | WO2019138206A1 (en) |
Families Citing this family (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11169805B2 (en) * | 2018-04-30 | 2021-11-09 | Hewlett Packard Enterprise Development Lp | Dynamic processor cache to avoid speculative vulnerability |
| US10949210B2 (en) | 2018-05-02 | 2021-03-16 | Micron Technology, Inc. | Shadow cache for securing conditional speculative instruction execution |
| US20200034152A1 (en) * | 2018-07-30 | 2020-01-30 | Cavium, Llc | Preventing Information Leakage In Out-Of-Order Machines Due To Misspeculation |
| US11048636B2 (en) | 2019-07-31 | 2021-06-29 | Micron Technology, Inc. | Cache with set associativity having data defined cache sets |
| US11200166B2 (en) | 2019-07-31 | 2021-12-14 | Micron Technology, Inc. | Data defined caches 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 |
| 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 |
| US11169737B2 (en) | 2019-08-13 | 2021-11-09 | Micron Technology, Inc. | Speculation in memory |
| US11061824B2 (en) | 2019-09-03 | 2021-07-13 | Microsoft Technology Licensing, Llc | Deferring cache state updates in a non-speculative cache memory in a processor-based system in response to a speculative data request until the speculative data request becomes non-speculative |
| US20210081575A1 (en) * | 2019-09-12 | 2021-03-18 | Microsoft Technology Licensing, Llc | Hybrid mitigation of speculation based attacks based on program behavior |
| US11403394B2 (en) * | 2019-09-17 | 2022-08-02 | International Business Machines Corporation | Preventing selective events of a computing environment |
| US11443044B2 (en) * | 2019-09-23 | 2022-09-13 | International Business Machines Corporation | Targeted very long delay for increasing speculative execution progression |
| US11210102B2 (en) | 2019-11-26 | 2021-12-28 | Arm Limited | Speculative buffer for speculative memory accesses with entries tagged with execution context identifiers |
| CN111274584B (en) * | 2020-01-17 | 2022-07-15 | 中国科学院计算技术研究所 | Device for defending processor transient attack based on cache rollback |
| CN111259384B (en) * | 2020-01-17 | 2022-06-14 | 中国科学院计算技术研究所 | Processor transient attack defense method based on cache random invalidation |
| GB2598784B (en) * | 2020-09-14 | 2022-11-16 | Advanced Risc Mach Ltd | Draining operation for draining dirty cache lines to persistent memory |
| CN113988306B (en) * | 2021-09-28 | 2025-04-29 | 阿里巴巴(中国)有限公司 | Sample data processing method, device, equipment and storage medium |
| US12105715B2 (en) * | 2021-10-19 | 2024-10-01 | Salesforce, Inc. | Tenant identification for cache keys |
| US11734278B2 (en) | 2021-10-19 | 2023-08-22 | Salesforce, Inc. | Cache management for multiple tenants |
| JP2023079640A (en) * | 2021-11-29 | 2023-06-08 | 富士通株式会社 | Computation processing apparatus and method of processing computation |
| GB2630754B (en) * | 2023-06-05 | 2025-09-24 | Advanced Risc Mach Ltd | Extension processing circuitry start-up |
| US20250293704A1 (en) * | 2024-03-14 | 2025-09-18 | Qualcomm Incorporated | Bandwidth Compressed Data Movement and Footprint Compression |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2451199A (en) * | 2004-12-29 | 2009-01-21 | Intel Corp | Processing apparatus using speculative execution with a buffer attached to the cache to hold an invalid access value when access to the cache is made |
| US20140156933A1 (en) * | 2012-11-30 | 2014-06-05 | Omar M. Shaikh | System, Method, and Apparatus for Improving Throughput of Consecutive Transactional Memory Regions |
| US20150006821A1 (en) * | 2010-01-08 | 2015-01-01 | International Business Machines Corporation | Evict on write, a management strategy for a prefetch unit and/or first level cache in a multiprocessor system with speculative execution |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63292255A (en) | 1987-05-25 | 1988-11-29 | Matsushita Electric Ind Co Ltd | Logical cache |
| US6321328B1 (en) * | 1999-03-22 | 2001-11-20 | Hewlett-Packard Company | Processor having data buffer for speculative loads |
| US7171610B2 (en) | 2002-06-12 | 2007-01-30 | International Business Machines Corporation | Method, system, and article of manufacture for preventing data loss |
| US7225299B1 (en) | 2003-07-16 | 2007-05-29 | Transmeta Corporation | Supporting speculative modification in a data cache |
| US7409500B2 (en) * | 2004-01-13 | 2008-08-05 | Hewlett-Packard Development Company, L.P. | Systems and methods for employing speculative fills |
| EP1807767A1 (en) * | 2004-09-07 | 2007-07-18 | Freescale Semiconductors, Inc. | A virtual address cache and method for sharing data stored in a virtual address cache |
| US8943273B1 (en) * | 2008-08-14 | 2015-01-27 | Marvell International Ltd. | Method and apparatus for improving cache efficiency |
| US20120079245A1 (en) | 2010-09-25 | 2012-03-29 | Cheng Wang | Dynamic optimization for conditional commit |
| WO2013188306A1 (en) * | 2012-06-15 | 2013-12-19 | Soft Machines, Inc. | Reordered speculative instruction sequences with a disambiguation-free out of order load store queue |
| US9195465B2 (en) | 2012-12-28 | 2015-11-24 | Intel Corporation | Cache coherency and processor consistency |
| US10409763B2 (en) * | 2014-06-30 | 2019-09-10 | Intel Corporation | Apparatus and method for efficiently implementing a processor pipeline |
| US10089238B2 (en) * | 2014-07-17 | 2018-10-02 | Qualcomm Incorporated | Method and apparatus for a shared cache with dynamic partitioning |
| US10120809B2 (en) * | 2015-09-26 | 2018-11-06 | Intel Corporation | Method, apparatus, and system for allocating cache using traffic class |
| US10187308B2 (en) * | 2016-09-30 | 2019-01-22 | Intel Corporation | Virtual switch acceleration using resource director technology |
| US10489273B2 (en) * | 2016-10-20 | 2019-11-26 | Microsoft Technology Licensing, Llc | Reuse of a related thread's cache while recording a trace file of code execution |
| US10552153B2 (en) * | 2017-03-31 | 2020-02-04 | Intel Corporation | Efficient range-based memory writeback to improve host to device communication for optimal power and performance |
| US20180373646A1 (en) * | 2017-06-22 | 2018-12-27 | Technion Research & Development Foundation Ltd | Cache unit useful for secure execution |
| US10430186B2 (en) * | 2017-10-27 | 2019-10-01 | Vmware, Inc. | Speeding up transactions in non-volatile memory using hardware transactional memory |
-
2018
- 2018-01-10 GB GB1800357.4A patent/GB2570110B/en active Active
- 2018-08-30 WO PCT/GB2018/052449 patent/WO2019138206A1/en not_active Ceased
- 2018-08-30 KR KR1020207021153A patent/KR102746185B1/en active Active
- 2018-08-30 JP JP2020537167A patent/JP7228592B2/en active Active
- 2018-08-30 EP EP18765999.0A patent/EP3738041B1/en active Active
- 2018-08-30 CN CN201880084565.9A patent/CN111527479B/en active Active
- 2018-08-30 US US16/959,280 patent/US11461243B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2451199A (en) * | 2004-12-29 | 2009-01-21 | Intel Corp | Processing apparatus using speculative execution with a buffer attached to the cache to hold an invalid access value when access to the cache is made |
| US20150006821A1 (en) * | 2010-01-08 | 2015-01-01 | International Business Machines Corporation | Evict on write, a management strategy for a prefetch unit and/or first level cache in a multiprocessor system with speculative execution |
| US20140156933A1 (en) * | 2012-11-30 | 2014-06-05 | Omar M. Shaikh | System, Method, and Apparatus for Improving Throughput of Consecutive Transactional Memory Regions |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3738041B1 (en) | 2024-02-21 |
| EP3738041A1 (en) | 2020-11-18 |
| GB2570110A (en) | 2019-07-17 |
| GB201800357D0 (en) | 2018-02-21 |
| CN111527479A (en) | 2020-08-11 |
| WO2019138206A1 (en) | 2019-07-18 |
| US11461243B2 (en) | 2022-10-04 |
| JP2021510434A (en) | 2021-04-22 |
| CN111527479B (en) | 2024-06-14 |
| KR102746185B1 (en) | 2024-12-26 |
| JP7228592B2 (en) | 2023-02-24 |
| KR20200106042A (en) | 2020-09-10 |
| US20210056043A1 (en) | 2021-02-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| GB2570110B (en) | Speculative cache storage region | |
| GB2564994B (en) | Cache memory access | |
| GB2565069B (en) | Address translation cache | |
| GB2574042B (en) | Branch Prediction Cache | |
| GB201620880D0 (en) | Profiling cache replacement | |
| SG11201606896XA (en) | Page cache write logging at block-based storage | |
| GB2571536B (en) | Coherency manager | |
| GB2587512B (en) | Coordination of cache memory operations | |
| IL280581A (en) | Variant rnai against alpha-synuclein | |
| GB201509424D0 (en) | Cache coherency | |
| GB2579329B (en) | Cache management | |
| GB2538150B (en) | Tracking the content of a cache | |
| EP3695317A4 (en) | LATENCY-FREE PREFETCHING IN CACHE STORAGE | |
| GB2539382B (en) | Cache coherency | |
| GB2560240B (en) | Cache content management | |
| GB2566470B (en) | Cache storage | |
| IL279495A (en) | Transactional compare-and-discard instruction | |
| GB2546245B (en) | Cache memory | |
| GB2574171B (en) | Cache miss thread balancing | |
| SG11202009229UA (en) | Refrigerator-freezer | |
| CA184764S (en) | Storage case | |
| GB2572968B (en) | Tracking speculative data caching | |
| GB2570299B (en) | Increasing effective cache associativity | |
| GB2605057B (en) | Duplicate-copy cache using heterogeneous memory types | |
| GB2589022B (en) | Coherency manager |