CN113490921A - 用于收集冷页的装置、方法和系统 - Google Patents

用于收集冷页的装置、方法和系统 Download PDF

Info

Publication number
CN113490921A
CN113490921A CN201980093104.2A CN201980093104A CN113490921A CN 113490921 A CN113490921 A CN 113490921A CN 201980093104 A CN201980093104 A CN 201980093104A CN 113490921 A CN113490921 A CN 113490921A
Authority
CN
China
Prior art keywords
memory
page index
index bitmap
page
cache
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
CN201980093104.2A
Other languages
English (en)
Chinese (zh)
Inventor
卓秋旭
A·勒克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN113490921A publication Critical patent/CN113490921A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0804Addressing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0866Addressing 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/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1048Scalability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/28Using a specific disk cache architecture
    • G06F2212/283Plural cache memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/46Caching storage objects of specific type in disk cache
    • G06F2212/466Metadata, control data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
CN201980093104.2A 2019-03-29 2019-03-29 用于收集冷页的装置、方法和系统 Pending CN113490921A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/080362 WO2020198913A1 (fr) 2019-03-29 2019-03-29 Appareil, procédé et système de collecte de pages froides

Publications (1)

Publication Number Publication Date
CN113490921A true CN113490921A (zh) 2021-10-08

Family

ID=72664384

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980093104.2A Pending CN113490921A (zh) 2019-03-29 2019-03-29 用于收集冷页的装置、方法和系统

Country Status (4)

Country Link
US (1) US11954356B2 (fr)
EP (1) EP3948549B1 (fr)
CN (1) CN113490921A (fr)
WO (1) WO2020198913A1 (fr)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11106594B2 (en) * 2019-09-05 2021-08-31 Advanced Micro Devices, Inc. Quality of service dirty line tracking
US11880309B2 (en) * 2021-06-23 2024-01-23 Vmware, Inc. Method and system for tracking state of cache lines

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6557083B1 (en) * 2000-06-30 2003-04-29 Intel Corporation Memory system for multiple data types
US9015441B2 (en) 2010-04-30 2015-04-21 Microsoft Technology Licensing, Llc Memory usage scanning
US20120047313A1 (en) * 2010-08-19 2012-02-23 Microsoft Corporation Hierarchical memory management in virtualized systems for non-volatile memory models
US9569360B2 (en) * 2013-09-27 2017-02-14 Facebook, Inc. Partitioning shared caches
US9697137B2 (en) * 2014-11-14 2017-07-04 Cavium, Inc. Filtering translation lookaside buffer invalidations
US10235290B2 (en) * 2015-06-26 2019-03-19 Advanced Micro Devices, Inc. Hot page selection in multi-level memory hierarchies
US20180107404A1 (en) * 2015-11-02 2018-04-19 StorReduce Garbage collection system and process
US9870285B2 (en) * 2015-11-18 2018-01-16 International Business Machines Corporation Selectively de-straddling data pages in non-volatile memory
CN106970881B (zh) * 2017-03-10 2020-04-28 浙江大学 一基于大页的冷热页追踪及压缩回收方法
CN108733313B (zh) * 2017-04-17 2021-07-23 伊姆西Ip控股有限责任公司 利用预备盘建立多级闪速缓存的方法、设备和计算机可读介质
US20190294345A1 (en) * 2018-03-21 2019-09-26 Super Talent Technology Corp. Data-Retention Controller Using Mapping Tables in a Green Solid-State-Drive (GNSD) for Enhanced Flash Endurance
US10769017B2 (en) * 2018-04-23 2020-09-08 Hewlett Packard Enterprise Development Lp Adaptive multi-level checkpointing
CN108763104B (zh) * 2018-05-23 2022-04-08 北京小米移动软件有限公司 预读取文件页的方法、装置及存储介质

Also Published As

Publication number Publication date
WO2020198913A1 (fr) 2020-10-08
US20220137860A1 (en) 2022-05-05
EP3948549B1 (fr) 2024-05-08
US11954356B2 (en) 2024-04-09
EP3948549A1 (fr) 2022-02-09
EP3948549A4 (fr) 2022-10-26

Similar Documents

Publication Publication Date Title
US9921972B2 (en) Method and apparatus for implementing a heterogeneous memory subsystem
US10496551B2 (en) Method and system for leveraging non-uniform miss penality in cache replacement policy to improve processor performance and power
US9170955B2 (en) Providing extended cache replacement state information
US9727475B2 (en) Method and apparatus for distributed snoop filtering
CN108268385B (zh) 具有集成目录高速缓存的优化的高速缓存代理
US20170185515A1 (en) Cpu remote snoop filtering mechanism for field programmable gate array
TWI489273B (zh) 地址範圍的優先機制
US20200104259A1 (en) System, method, and apparatus for snapshot prefetching to improve performance of snapshot operations
US11550721B2 (en) Method and apparatus for smart store operations with conditional ownership requests
US10482017B2 (en) Processor, method, and system for cache partitioning and control for accurate performance monitoring and optimization
WO2017172220A1 (fr) Procédé, système et appareil avec liste de tâches en cohérence pour minimiser l'observation de mémoire cache entre un cpu et un fpga
US10657070B2 (en) Apparatus and method for shared least recently used (LRU) policy between multiple cache levels
EP3948549B1 (fr) Appareil, procédé et système de collecte de pages froides
US20180121353A1 (en) System, method, and apparatus for reducing redundant writes to memory by early detection and roi-based throttling
US10013352B2 (en) Partner-aware virtual microsectoring for sectored cache architectures
US20220197798A1 (en) Single re-use processor cache policy
CN114691551A (zh) 自动化转换后备缓冲器集合再平衡
US20240232096A9 (en) Hardware assisted memory access tracking
US20240134803A1 (en) Hardware assisted memory access tracking
US20220197797A1 (en) Dynamic inclusive last level cache

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination