JP7010809B2 - デデュープ可能なメモリキャッシュ及びそのための動作方法 - Google Patents

デデュープ可能なメモリキャッシュ及びそのための動作方法 Download PDF

Info

Publication number
JP7010809B2
JP7010809B2 JP2018234370A JP2018234370A JP7010809B2 JP 7010809 B2 JP7010809 B2 JP 7010809B2 JP 2018234370 A JP2018234370 A JP 2018234370A JP 2018234370 A JP2018234370 A JP 2018234370A JP 7010809 B2 JP7010809 B2 JP 7010809B2
Authority
JP
Japan
Prior art keywords
cache
deducable
data
read
write
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
Application number
JP2018234370A
Other languages
English (en)
Japanese (ja)
Other versions
JP2019128949A5 (enExample
JP2019128949A (ja
Inventor
牧 天 張
アンドリュー チャン,
冬 岩 姜
宏 忠 鄭
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2019128949A publication Critical patent/JP2019128949A/ja
Publication of JP2019128949A5 publication Critical patent/JP2019128949A5/ja
Application granted granted Critical
Publication of JP7010809B2 publication Critical patent/JP7010809B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • 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/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
    • 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/0893Caches characterised by their organisation or structure
    • 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/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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
JP2018234370A 2018-01-19 2018-12-14 デデュープ可能なメモリキャッシュ及びそのための動作方法 Active JP7010809B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201862619723P 2018-01-19 2018-01-19
US62/619,723 2018-01-19
US15/934,940 US10705969B2 (en) 2018-01-19 2018-03-23 Dedupe DRAM cache
US15/934,940 2018-03-23

Publications (3)

Publication Number Publication Date
JP2019128949A JP2019128949A (ja) 2019-08-01
JP2019128949A5 JP2019128949A5 (enExample) 2022-01-11
JP7010809B2 true JP7010809B2 (ja) 2022-01-26

Family

ID=67298141

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018234370A Active JP7010809B2 (ja) 2018-01-19 2018-12-14 デデュープ可能なメモリキャッシュ及びそのための動作方法

Country Status (5)

Country Link
US (1) US10705969B2 (enExample)
JP (1) JP7010809B2 (enExample)
KR (1) KR102401592B1 (enExample)
CN (1) CN110058805B (enExample)
TW (1) TWI761608B (enExample)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019022632A1 (en) * 2017-07-27 2019-01-31 EMC IP Holding Company LLC STORING A SINGLE COPY OF DATA IN A CACHE READING MEMORY
CN110764697B (zh) * 2019-09-29 2023-08-29 望海康信(北京)科技股份公司 一种数据管理方法及装置
US20200133884A1 (en) * 2019-12-19 2020-04-30 Intel Corporation Nvram system memory with memory side cache that favors written to items and/or includes regions with customized temperature induced speed settings
CN111263240B (zh) * 2020-02-12 2022-07-19 青岛海信宽带多媒体技术有限公司 Iptv 4k音视频播放管理方法、装置、显示设备
US11720484B2 (en) * 2020-07-28 2023-08-08 EMC IP Holding Company, LLC System and method for efficient background deduplication during hardening
US11442911B2 (en) 2020-08-31 2022-09-13 Google Llc Moving window data deduplication in distributed storage
CN112351293B (zh) * 2020-10-26 2021-09-21 北京达佳互联信息技术有限公司 一种检测状态信令丢失的方法、装置及介质
US11403212B1 (en) * 2021-05-05 2022-08-02 Vmware, Inc. Deduplication assisted caching policy for content based read cache (CBRC)
US12117939B2 (en) * 2021-12-21 2024-10-15 Advanced Micro Devices, Inc. Stochastic optimization of surface cacheability in parallel processing units
US20240311315A1 (en) * 2023-03-14 2024-09-19 Samsung Electronics Co., Ltd. Systems and methods for computing with multiple nodes
US12210453B2 (en) * 2023-06-30 2025-01-28 Genesys Cloud Services, Inc. Technologies for configurable caching, deduplication, and rate limit handling

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8732403B1 (en) 2012-03-14 2014-05-20 Netapp, Inc. Deduplication of data blocks on storage devices
JP2017208096A (ja) 2016-05-20 2017-11-24 三星電子株式会社Samsung Electronics Co.,Ltd. データの回収方法及び格納方法並びに重複除去モジュール

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101023877B1 (ko) * 2009-04-17 2011-03-22 (주)인디링스 캐시 및 디스크 관리 방법 및 상기 방법을 이용한 컨트롤러
WO2011031796A2 (en) * 2009-09-08 2011-03-17 Fusion-Io, Inc. Apparatus, system, and method for caching data on a solid-state storage device
US9401967B2 (en) 2010-06-09 2016-07-26 Brocade Communications Systems, Inc. Inline wire speed deduplication system
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US9898410B2 (en) 2013-09-10 2018-02-20 Intel Corporation Hybrid main memory using a fine-grain level of remapping
US9390116B1 (en) 2013-09-26 2016-07-12 Emc Corporation Insertion and eviction schemes for deduplicated cache system of a storage system
US9304914B1 (en) 2013-09-26 2016-04-05 Emc Corporation Deduplicated cache system of a storage system
WO2016041127A1 (zh) * 2014-09-15 2016-03-24 华为技术有限公司 重复数据删除方法和存储阵列
US9852076B1 (en) * 2014-12-18 2017-12-26 Violin Systems Llc Caching of metadata for deduplicated LUNs
CN105843551B (zh) * 2015-01-29 2020-09-15 爱思开海力士有限公司 高性能和大容量储存重复删除中的数据完整性和损耗电阻
CN105095113B (zh) * 2015-07-21 2018-06-29 浪潮(北京)电子信息产业有限公司 一种缓存管理方法和系统
US20170091117A1 (en) 2015-09-25 2017-03-30 Qualcomm Incorporated Method and apparatus for cache line deduplication via data matching
US10169232B2 (en) * 2016-02-19 2019-01-01 Seagate Technology Llc Associative and atomic write-back caching system and method for storage subsystem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8732403B1 (en) 2012-03-14 2014-05-20 Netapp, Inc. Deduplication of data blocks on storage devices
JP2017208096A (ja) 2016-05-20 2017-11-24 三星電子株式会社Samsung Electronics Co.,Ltd. データの回収方法及び格納方法並びに重複除去モジュール

Also Published As

Publication number Publication date
KR20190088864A (ko) 2019-07-29
TWI761608B (zh) 2022-04-21
TW201933108A (zh) 2019-08-16
KR102401592B1 (ko) 2022-05-24
CN110058805B (zh) 2024-10-01
JP2019128949A (ja) 2019-08-01
US10705969B2 (en) 2020-07-07
US20190227941A1 (en) 2019-07-25
CN110058805A (zh) 2019-07-26

Similar Documents

Publication Publication Date Title
JP7010809B2 (ja) デデュープ可能なメモリキャッシュ及びそのための動作方法
US11822813B2 (en) Storage device, operation method of storage device, and storage system using the same
CN108572796B (zh) 具有异构nvm类型的ssd
US7117310B2 (en) Systems and methods for cache synchronization between redundant storage controllers
KR102395360B1 (ko) 비휘발성 데이터 저장장치 내부에서 원자적으로 복수의 기록 트랜잭션을 수행하는 장치 제어기 및 방법
US9836404B2 (en) Write mirroring to storage class memory devices
US8489820B1 (en) Speculative copying of data from main buffer cache to solid-state secondary cache of a storage server
US20150339058A1 (en) Storage system and control method
CN107148622A (zh) 智能闪存高速缓存记录器
US8185691B2 (en) Optimized cache coherency in a dual-controller storage array
CN113254363A (zh) 具有部分逻辑到物理地址转换表的非易失性存储控制器
TW202407547A (zh) 儲存裝置以及處理自主機計算裝置至儲存裝置的命令的方法
KR20140128824A (ko) 속성 데이터를 이용한 데이터 관리 방법
KR20140128823A (ko) 멀티-트랜잭션의 아토믹 라이트 방법
US9864688B1 (en) Discarding cached data before cache flush
US20240211406A1 (en) Systems, methods, and apparatus for accessing data from memory or storage at a storage node
EP4328755B1 (en) Systems, methods, and apparatus for accessing data in versions of memory pages
EP4307127B1 (en) Systems and methods for managing bias mode switching
EP4044038B1 (en) Cache operation for a persistent storage device
US20250335296A1 (en) Pre-Read Assisted Write Coalescing for Parity Virtual Disks
CN117609105A (zh) 用于访问存储器页的版本中的数据的方法和设备
CN118672495A (zh) 存储器装置和用于存储器装置的方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211206

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211206

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20211206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220104

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220113

R150 Certificate of patent or registration of utility model

Ref document number: 7010809

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250