JP2019128949A5 - - Google Patents

Download PDF

Info

Publication number
JP2019128949A5
JP2019128949A5 JP2018234370A JP2018234370A JP2019128949A5 JP 2019128949 A5 JP2019128949 A5 JP 2019128949A5 JP 2018234370 A JP2018234370 A JP 2018234370A JP 2018234370 A JP2018234370 A JP 2018234370A JP 2019128949 A5 JP2019128949 A5 JP 2019128949A5
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.)
Granted
Application number
JP2018234370A
Other languages
English (en)
Other versions
JP7010809B2 (ja
JP2019128949A (ja
Filing date
Publication date
Priority claimed from US15/934,940 external-priority patent/US10705969B2/en
Application filed filed Critical
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

Claims (21)

  1. デデュープ可能な(dedupable)リードキャッシュ及び非デデュープ可能な(non−dedupable)ライトバッファを含むキャッシュメモリと、
    前記デデュープ可能なリードキャッシュを利用してデータのリード及びライトを管理し、前記デデュープ可能なリードキャッシュへのライト要請が成功したか否かを示すライト状態信号を伝送するように動作するデデュープエンジンと、
    キャッシュコントローラと、を備え、
    前記キャッシュコントローラは、
    要請に含まれるアドレスが前記デデュープ可能なリードキャッシュで発見されるか否かをチェックするキャッシュヒット/ミスチェックロジックと、
    前記アドレスが前記デデュープ可能なリードキャッシュで発見されることを前記キャッシュヒット/ミスチェックロジックが示す場合、前記キャッシュメモリからの第1データにアクセスするヒットブロックと、
    前記アドレスが前記デデュープ可能なリードキャッシュで発見されないことを前記キャッシュヒット/ミスチェックロジックが示す場合、バックエンド大容量メモリからの第2データにアクセスするミスブロックと、
    前記デデュープ可能なリードキャッシュの前記第1データへのアクセスに関する情報を格納するヒストリーストレージと、を含むことを特徴とするデデュープ可能なキャッシュ。
  2. 前記デデュープ可能なリードキャッシュは、前記デデュープ可能なリードキャッシュに物理的に適合するものよりもより多くのキャッシュラインを格納することをシミュレーションすることを特徴とする請求項1に記載のデデュープ可能なキャッシュ。
  3. 前記キャッシュメモリは、前記デデュープ可能なリードキャッシュのキャッシュラインに関する情報を格納するメタデータ領域を更に含むことを特徴とする請求項1に記載のデデュープ可能なキャッシュ。
  4. 前記キャッシュコントローラは、データをライトするための第1ライト要請をプロセッサから受信し前記非デデュープ可能なライトバッファに前記データを格納するように動作し、
    前記ヒットブロックは、前記デデュープ可能なリードキャッシュのキャッシュラインが前記第1ライト要請によって修正される場合、前記キャッシュラインを無効化させるように前記デデュープエンジンに第2ライト要請を伝送するように動作することを特徴とする請求項1に記載のデデュープ可能なキャッシュ。
  5. 前記第2ライト要請は、前記デデュープ可能なリードキャッシュ内のキャッシュラインに0の値をライトする要請を含むことを特徴とする請求項4に記載のデデュープ可能なキャッシュ。
  6. 前記キャッシュコントローラは、前記キャッシュメモリのメタデータ領域に前記キャッシュラインが有効でないとしてマークするように更に動作することを特徴とする請求項4に記載のデデュープ可能なキャッシュ。
  7. 前記ヒットブロックは、前記第2ライト要請に応答して前記デデュープエンジンから非確認応答(NAK)信号を受信し、前記デデュープ可能なリードキャッシュから第2キャッシュラインを除去し、前記デデュープ可能なリードキャッシュから前記第2キャッシュラインを除去した後に前記デデュープエンジンに前記第2ライト要請を再び伝送するように更に動作することを特徴とする請求項4に記載のデデュープ可能なキャッシュ。
  8. 前記キャッシュコントローラは、データをリードするためのリード要請をプロセッサから受信して前記プロセッサに前記データを伝送するように動作し、
    前記ミスブロックは、前記バックエンド大容量メモリから前記データをリトリーブし、前記デデュープ可能なリードキャッシュに前記データをライトするために前記デデュープエンジンにライト要請を伝送するように動作することを特徴とする請求項1に記載のデデュープ可能なキャッシュ。
  9. 前記ミスブロックは、前記ライト要請に応答して前記デデュープエンジンから非確認応答(NAK)信号を受信し、前記デデュープ可能なリードキャッシュからキャッシュラインを除去し、前記デデュープ可能なリードキャッシュから前記キャッシュラインを除去した後に前記デデュープエンジンに前記ライト要請を再び伝送するように更に動作することを特徴とする請求項8に記載のデデュープ可能なキャッシュ。
  10. 前記デデュープ可能なリードキャッシュは、デデュープメモリを含み、
    前記デデュープメモリ内のデータは、デデュープの対象になることを特徴とする請求項1に記載のデデュープ可能なキャッシュ。
  11. キャッシュコントローラの動作方法であって、
    データをライトするためのライト要請を受信するステップと、
    前記データがデデュープ可能な(dedupable)リードキャッシュ内のキャッシュラインに存在すると判定するステップと、
    前記デデュープ可能なリードキャッシュ内のキャッシュラインを無効化するステップと、
    前記データを非デデュープ可能な(non−dedupable)ライトバッファに格納するステップと、を有し、
    前記デデュープ可能なリードキャッシュは、キャッシュメモリの第1領域であり、
    前記キャッシュメモリは、第2領域として前記非デデュープ可能なライトバッファを含むことを特徴とする方法。
  12. 前記デデュープ可能なリードキャッシュ内のキャッシュラインを無効化するステップは、
    前記キャッシュメモリのメタデータ領域に前記キャッシュラインが有効でないとしてマークするステップと、
    デデュープエンジンを介して前記キャッシュラインに0の値をライトするステップと、を含むことを特徴とする請求項11に記載の方法。
  13. 前記デデュープ可能なリードキャッシュ内のキャッシュラインを無効化するステップは、前記デデュープエンジンからライト状態信号の確認応答(ACK)を受信するステップ更に含むことを特徴とする請求項12に記載の方法。
  14. 前記デデュープ可能なリードキャッシュ内のキャッシュラインを無効化するステップは、
    前記デデュープエンジンからライト状態信号の非確認応答(NAK)を受信するステップと、
    前記デデュープ可能なリードキャッシュから除去するために第2キャッシュラインを選択するステップと、
    前記第2キャッシュラインを無効化するステップと、
    前記デデュープエンジンを介して前記第2キャッシュラインに0の値をライトするステップと、を更に含むことを特徴とする請求項12に記載の方法。
  15. 前記データを非デデュープ可能なライトバッファに格納するステップは、前記データが前記デデュープ可能なリードキャッシュ内のキャッシュラインに存在するか否かに拘らず、前記データを前記非デデュープ可能なライトバッファに格納するステップ含むことを特徴とする請求項11に記載の方法。
  16. キャッシュコントローラの動作方法であって、
    データをリードするためのリード要請を受信するステップと、
    前記データがデデュープ可能な(dedupable)リードキャッシュの複数のキャッシュラインに存在しないと判定するステップと、
    バックエンド大容量メモリから前記データをリードするステップと、
    前記デデュープ可能なリードキャッシュの第1キャッシュラインを選択するステップと、
    前記データを前記第1キャッシュラインにライトすることを試みるためにデデュープエンジンに前記データを提供するステップと、
    前記リード要請に応答して前記データを伝送するステップと、を有し、
    前記デデュープ可能なリードキャッシュは、キャッシュメモリの第1領域であり、
    前記キャッシュメモリは、第2領域として非デデュープ可能な(non−dedupable)ライトバッファを含むことを特徴とする方法。
  17. 前記デデュープ可能なリードキャッシュの第1キャッシュラインを選択するステップは現在データを格納していない前記デデュープ可能なリードキャッシュ内の第1キャッシュラインを選択するステップを含むことを特徴とする請求項16に記載の方法。
  18. 前記デデュープ可能なリードキャッシュの第1キャッシュラインを選択するステップは、
    前記キャッシュメモリのメタデータ領域からのデデュープ可能なリードキャッシュメタデータ及びヒストリーデータに応答して除去するために現在有効なデータを格納している前記デデュープ可能なリードキャッシュ内の第1キャッシュラインを選択するステップと、
    前記第1キャッシュラインを無効化するステップと、を含むことを特徴とする請求項16に記載の方法。
  19. 前記第1キャッシュラインを無効化するステップは、
    前記キャッシュメモリ内のメタデータ領域に前記第1キャッシュラインを有効でないとしてマークするステップと、
    前記デデュープエンジンを介して前記第1キャッシュラインに0の値をライトするステップと、を含むことを特徴とする請求項18に記載の方法。
  20. 前記データを前記第1キャッシュラインにライトすることを試みるためにデデュープエンジンに前記データを提供するステップは、前記デデュープエンジンからライト状態信号の確認応答(ACK)を受信するステップを含むことを特徴とする請求項16に記載の方法。
  21. 前記データを前記第1キャッシュラインにライトすることを試みるためにデデュープエンジンに前記データを提供するステップは、
    前記デデュープエンジンからライト状態信号の非確認応答(NAK)を受信するステップと、
    前記キャッシュメモリのメタデータ領域からのデデュープ可能なリードキャッシュメタデータ及びヒストリーデータに応答して除去するために現在有効なデータを格納している前記デデュープ可能なリードキャッシュから第2キャッシュラインを選択するステップと、
    前記第2キャッシュラインを無効化するステップと、
    前記データを前記選択された第2キャッシュラインにライトすることを試みるために前記デデュープエンジンに前記データを提供するステップと、を含むことを特徴とする請求項16に記載の方法。
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 true JP2019128949A5 (ja) 2022-01-11
JP7010809B2 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 (ja)
JP (1) JP7010809B2 (ja)
KR (1) KR102401592B1 (ja)
CN (1) CN110058805B (ja)
TW (1) TWI761608B (ja)

Families Citing this family (10)

* 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)
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

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8719501B2 (en) * 2009-09-08 2014-05-06 Fusion-Io Apparatus, system, and method for caching data on a solid-state storage device
KR101023877B1 (ko) * 2009-04-17 2011-03-22 (주)인디링스 캐시 및 디스크 관리 방법 및 상기 방법을 이용한 컨트롤러
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
US8732403B1 (en) * 2012-03-14 2014-05-20 Netapp, Inc. Deduplication of data blocks on storage devices
US9898410B2 (en) 2013-09-10 2018-02-20 Intel Corporation Hybrid main memory using a fine-grain level of remapping
US9304914B1 (en) 2013-09-26 2016-04-05 Emc Corporation Deduplicated cache system of a storage system
US9390116B1 (en) 2013-09-26 2016-07-12 Emc Corporation Insertion and eviction schemes for deduplicated cache system of a storage system
CN105612489B (zh) * 2014-09-15 2017-08-29 华为技术有限公司 重复数据删除方法和存储阵列
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
JP6920107B2 (ja) * 2016-05-20 2021-08-18 三星電子株式会社Samsung Electronics Co.,Ltd. データの取得方法及び格納方法並びに重複除去モジュール

Similar Documents

Publication Publication Date Title
JP2019128949A5 (ja)
TWI761608B (zh) 重復資料刪除快取及其方法
JP5434738B2 (ja) ディスク装置
US11270734B2 (en) Method for accessing shingled magnetic recording SMR disk, and server
TWI567554B (zh) 緩存及讀取即將寫入儲存單元之資料的方法以及使用該方法的裝置
US20110231598A1 (en) Memory system and controller
TW201903612A (zh) 記憶體模組及操作記憶體模組的方法
TWI771383B (zh) 固態驅動機、其方法及物品
KR101663066B1 (ko) 하이브리드 디바이스에서의 고체 상태 메모리 커맨드 큐
TWI809504B (zh) 動態地管理儲存裝置之緩衝區的方法、儲存裝置、及非暫態性電腦可讀媒體
US20100185806A1 (en) Caching systems and methods using a solid state disk
US9798623B2 (en) Using cache to manage errors in primary storage
JP2017151982A5 (ja)
JP2007522560A5 (ja)
EP3049938B1 (en) Data management on memory modules
US11269783B2 (en) Operating method for data storage device
WO2013108132A2 (en) Cache system using solid state drive
CN110968527B (zh) Ftl提供的缓存
CN108958657B (zh) 一种数据存储方法、存储设备及存储系统
KR20150019788A (ko) 캐시 장치 및 그 제어 방법
JP2003241904A5 (ja)
US12019589B2 (en) Optimized autonomous defragmentation of storage devices
EP4328755A1 (en) Systems, methods, and apparatus for accessing data in versions of memory pages
US11977479B2 (en) Log file system (LFS) invalidation command and operational mode
CN111737160B (zh) 存储管理中多个副本的优化处理