JP2020524339A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2020524339A5 JP2020524339A5 JP2019569799A JP2019569799A JP2020524339A5 JP 2020524339 A5 JP2020524339 A5 JP 2020524339A5 JP 2019569799 A JP2019569799 A JP 2019569799A JP 2019569799 A JP2019569799 A JP 2019569799A JP 2020524339 A5 JP2020524339 A5 JP 2020524339A5
- Authority
- JP
- Japan
- Prior art keywords
- pages
- memory
- page
- staging buffer
- frequency
- 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
Links
- 230000000875 corresponding Effects 0.000 claims 6
- 230000005012 migration Effects 0.000 claims 6
- 230000004044 response Effects 0.000 claims 3
- 230000014616 translation Effects 0.000 claims 2
Claims (12)
- メモリシステムにおいて使用される方法であって、
前記メモリシステムの第1メモリの第1の複数のページを、前記メモリシステムの第2メモリの第2の複数のページとスワップすることであって、前記第1メモリは、第1レイテンシを有しており、前記第2メモリは、第2レイテンシを有しており、前記第1レイテンシは、前記第2レイテンシよりも短い、ことと、
ページテーブルを更新し、トランスレーションルックアサイドバッファシュートダウンをトリガして、前記第1の複数のページの各々の仮想アドレスを、前記第2メモリ内の対応する物理アドレスに関連付け、前記第2の複数のページの各々の仮想アドレスを、前記第1メモリ内の対応する物理アドレスに関連付けることと、を含み、
前記スワップすることは、
前記第1の複数のページを、前記第1メモリからステージングバッファにコピーすることと、
前記第2の複数のページを、前記第2メモリから前記ステージングバッファにコピーすることと、
前記第1の複数のページの前記ステージングバッファへのコピーの間に、前記ステージングバッファ内の前記第1の複数のページのうち第1ページへの書き込み命令に応じて、前記第1ページのコピーにデータを書き込み、前記第1メモリ内の前記第1ページに前記データを書き込むことと、を含む、
方法。 - 前記スワップすることは、
前記第1の複数のページの各々の第1リダイレクション状態及び前記第2の複数のページの各々の第2リダイレクション状態を更新して、前記第1の複数のページ及び前記第2の複数のページの各々が前記ステージングバッファにコピーされていることを示すことをさらに含み、
前記書き込むことは、前記第1ページの前記第1リダイレクション状態に基づいている、
請求項1の方法。 - 前記スワップすることは、
前記第1の複数のページを、前記ステージングバッファから前記第2メモリにコピーすることと、
前記第2の複数のページを、前記ステージングバッファから前記第1メモリにコピーすることと、
前記第1の複数のページの各々の第1リダイレクション状態及び前記第2の複数のページの各々の第2リダイレクション状態を更新して、前記第1の複数のページ及び前記第2の複数のページの各々が前記ステージングバッファからコピーされていることを示すことと、をさらに含む、
請求項1の方法。 - 前記スワップすることは、
前記ステージングバッファからの前記第1の複数のページのコピーの間に、前記第1ページへの第2書き込み命令に応じて、前記第1ページのコピーを前記ステージングバッファに書き込むことをさらに含む、
請求項3の方法。 - 前記スワップすることは、
前記第1の複数のページの各々の前記第1リダイレクション状態及び前記第2の複数のページの各々の前記第2リダイレクション状態を更新して、前記ステージングバッファからの前記第1の複数のページ及び前記第2の複数のページのコピーが完了したときに前記ステージングバッファを解放することをさらに含む、
請求項3又は4の方法。 - 前記メモリシステムの個々のページに対するメモリアクセスの頻度をカウントして、メモリアクセス情報を生成することと、
前記メモリアクセス情報に基づいて、前記第1メモリにおいて最も低いメモリアクセス頻度を有する前記第1メモリ内の複数のページを、前記第1の複数のページとして識別することと、
前記メモリアクセス情報に基づいて、前記第2メモリにおいて最も高いメモリアクセス頻度を有する前記第2メモリ内の複数のページを、前記第2の複数のページとして識別することと、をさらに含み、
前記最も高いメモリアクセス頻度は、前記最も低いメモリアクセス頻度よりも大きい、
請求項1、2、3、4又は5の方法。 - 第3の複数のページを、前記メモリシステムの前記第2メモリから前記メモリシステムの前記第1メモリ内の第1の複数の未使用ページに移行することと、
前記ページテーブルを更新し、第2トランスレーションルックアサイドバッファシュートダウンをトリガして、前記第3の複数のページの各々の仮想アドレスを、前記第1メモリ内の対応する物理アドレスに関連付けることと、をさらに含む、
請求項1、2、3、4、5又は6の方法。 - メモリシステムの第1メモリのN個の第1ページを、前記メモリシステムの第2メモリのN個の第2ページとスワップするように構成されたマイグレーション制御ロジックであって、前記第1メモリは、第1レイテンシを有しており、前記第2メモリは、第2レイテンシを有しており、前記第1レイテンシは、前記第2レイテンシよりも短い、マイグレーション制御ロジックと、
前記メモリシステムの全てのページについての仮想‐物理アドレス変換を記憶するように構成されたページテーブルと、
前記メモリシステムのページについて最近使用された仮想‐物理アドレス変換を記憶するように構成されたトランスレーションルックアサイドバッファと、
少なくとも2×N個のページのサイズを有するステージングバッファであって、前記マイグレーション制御ロジックは、メモリシステムの前記第1メモリのN個の第1ページを前記ステージングバッファにコピーするように構成されており、前記メモリシステムの前記第2メモリのN個の第2ページを前記ステージングバッファにコピーするように構成されている、ステージングバッファと、
前記N個の第1ページの前記ステージングバッファへのコピーの間に、前記第1ページへの書き込み命令に応じて、前記ステージングバッファ内の前記N個の第1ページのうち第1ページのコピーにデータを書き込み、前記第1メモリ内の前記第1ページに前記データを書き込むように構成されたメモリコントローラと、を備え、
前記マイグレーション制御ロジックは、前記ページテーブルを更新し、トランスレーションルックアサイドバッファシュートダウンをトリガして、前記N個の第1ページの各々の仮想アドレスを、前記第2メモリ内の対応する物理アドレスに関連付け、前記N個の第2ページの各々の仮想アドレスを、前記第1メモリ内の対応する物理アドレスに関連付けるように構成されており、Nは、1よりも大きい整数である、
装置。 - 前記N個の第1ページのコピー及び前記N個の第2ページのコピーが前記ステージングバッファにコピーされているかどうかを示す、前記第1メモリの前記N個の第1ページの第1リダイレクション状態及び前記第2メモリの前記N個の第2ページの第2リダイレクション状態を記憶するように構成されたリダイレクション状態ストレージをさらに備え、
前記マイグレーション制御ロジックは、前記第1リダイレクション状態及び前記第2リダイレクション状態を更新して、前記N個の第1ページ及び前記N個の第2ページが前記ステージングバッファにコピーされていることを示すように構成されている、
請求項8の装置。 - 前記メモリコントローラは、前記ステージングバッファから前記第2メモリへの前記N個の第1ページのコピーの間に、前記第1ページへの第2書き込み命令に応じて、前記ステージングバッファ内の前記第1ページのコピーにデータを書き込むように構成されている、
請求項8又は9の装置。 - 前記メモリシステムの個々のページに対するメモリアクセス頻度カウントを記憶するように構成されたメモリアクセス情報ストレージと、
前記メモリシステム及び前記メモリアクセス情報ストレージに接続されたメモリバスと、
前記メモリバス及び前記メモリアクセス情報ストレージに接続されたプロファイリングロジックであって、前記メモリシステムの個々のページに対するメモリアクセスの頻度をカウントし、前記個々のページに対するメモリアクセスの頻度を前記メモリアクセス情報ストレージに記憶するように構成されたプロファイリングロジックと、をさらに備え、
前記マイグレーション制御ロジックは、前記メモリアクセス情報ストレージの内容に基づいて、前記第1メモリ内のN個の最低頻度ページを前記N個の第1ページとして識別し、前記メモリアクセス情報ストレージの前記内容に基づいて、前記第2メモリ内のN個の最高頻度ページを前記N個の第2ページとして識別するように構成されている、
請求項8、9又は10の装置。 - 前記プロファイリングロジックは、
前記メモリシステムの個々のページに対応する複数のカウンタの個々のカウンタを含む、複数のカウンタと、
前記第1メモリ内の前記N個の最低頻度ページを識別し、前記第2メモリ内の前記N個の最高頻度ページを識別するロジックであって、前記N個の最高頻度ページの各々は、前記N個の最低頻度ページの各々のメモリアクセス頻度よりも大きいメモリアクセス頻度を有する、ロジックと、を備える、
請求項11の装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/626,623 | 2017-06-19 | ||
US15/626,623 US10339067B2 (en) | 2017-06-19 | 2017-06-19 | Mechanism for reducing page migration overhead in memory systems |
PCT/US2018/037460 WO2018236657A1 (en) | 2017-06-19 | 2018-06-14 | MECHANISM FOR REDUCING PAGE MIGRATION OVERLOAD IN MEMORY SYSTEMS |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020524339A JP2020524339A (ja) | 2020-08-13 |
JP2020524339A5 true JP2020524339A5 (ja) | 2021-07-26 |
JP6928123B2 JP6928123B2 (ja) | 2021-09-01 |
Family
ID=64658092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019569799A Active JP6928123B2 (ja) | 2017-06-19 | 2018-06-14 | メモリシステム内のページマイグレーションのオーバヘッドを低減するメカニズム |
Country Status (6)
Country | Link |
---|---|
US (1) | US10339067B2 (ja) |
EP (1) | EP3642722B1 (ja) |
JP (1) | JP6928123B2 (ja) |
KR (1) | KR102350539B1 (ja) |
CN (1) | CN110730956B (ja) |
WO (1) | WO2018236657A1 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10263858B2 (en) * | 2017-02-07 | 2019-04-16 | Microsoft Technology Licensing, Llc | Environment simulator for user percentile |
US10489877B2 (en) * | 2017-04-24 | 2019-11-26 | Intel Corporation | Compute optimization mechanism |
US10726514B2 (en) | 2017-04-28 | 2020-07-28 | Intel Corporation | Compute optimizations for low precision machine learning operations |
US11275600B2 (en) * | 2017-11-14 | 2022-03-15 | TidalScale, Inc. | Virtualized I/O |
US10860244B2 (en) * | 2017-12-26 | 2020-12-08 | Intel Corporation | Method and apparatus for multi-level memory early page demotion |
CN109032510B (zh) * | 2018-06-29 | 2021-07-09 | 山石网科通信技术股份有限公司 | 基于分布式结构的处理数据的方法和装置 |
US11074189B2 (en) * | 2019-06-20 | 2021-07-27 | International Business Machines Corporation | FlatFlash system for byte granularity accessibility of memory in a unified memory-storage hierarchy |
US11269780B2 (en) * | 2019-09-17 | 2022-03-08 | Micron Technology, Inc. | Mapping non-typed memory access to typed memory access |
US10963396B1 (en) | 2019-09-17 | 2021-03-30 | Micron Technology, Inc. | Memory system for binding data to a memory namespace |
US11620233B1 (en) * | 2019-09-30 | 2023-04-04 | Amazon Technologies, Inc. | Memory data migration hardware |
US20210157647A1 (en) * | 2019-11-25 | 2021-05-27 | Alibaba Group Holding Limited | Numa system and method of migrating pages in the system |
CN114064519A (zh) * | 2020-08-03 | 2022-02-18 | 美光科技公司 | 高速缓存的元数据管理 |
US11789649B2 (en) | 2021-04-22 | 2023-10-17 | Nvidia Corporation | Combined on-package and off-package memory system |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7222117B1 (en) * | 2003-11-14 | 2007-05-22 | Advent Software, Inc. | Segmented global area database |
US7281116B2 (en) * | 2004-07-30 | 2007-10-09 | Hewlett-Packard Development Company, L.P. | Multiprocessor system having plural memory locations for respectively storing TLB-shootdown data for plural processor nodes |
US7386669B2 (en) * | 2005-03-31 | 2008-06-10 | International Business Machines Corporation | System and method of improving task switching and page translation performance utilizing a multilevel translation lookaside buffer |
US20070226795A1 (en) * | 2006-02-09 | 2007-09-27 | Texas Instruments Incorporated | Virtual cores and hardware-supported hypervisor integrated circuits, systems, methods and processes of manufacture |
EP1870813B1 (en) * | 2006-06-19 | 2013-01-30 | Texas Instruments France | Page processing circuits, devices, methods and systems for secure demand paging and other operations |
US20080127182A1 (en) * | 2006-11-29 | 2008-05-29 | Newport William T | Managing Memory Pages During Virtual Machine Migration |
US8402215B2 (en) | 2009-10-15 | 2013-03-19 | Hitachi, Ltd. | Storage system, storage apparatus, and optimization method of storage areas of storage system having page migration |
US9009384B2 (en) * | 2010-08-17 | 2015-04-14 | Microsoft Technology Licensing, Llc | Virtual machine memory management in systems with asymmetric memory |
US9053064B2 (en) | 2012-12-10 | 2015-06-09 | Vmware, Inc. | Method for saving virtual machine state to a checkpoint file |
KR101785301B1 (ko) | 2013-09-27 | 2017-11-15 | 인텔 코포레이션 | 디바이스들 간의 메모리 리소스를 구성하기 위한 장치, 방법 및 저장 매체 |
US10372335B2 (en) | 2014-09-16 | 2019-08-06 | Kove Ip, Llc | External memory for virtualization |
US9959205B2 (en) * | 2015-05-13 | 2018-05-01 | Wisconsin Alumni Research Foundation | Shared row buffer system for asymmetric memory |
US20170109043A1 (en) * | 2015-10-16 | 2017-04-20 | SK Hynix Inc. | Memory system |
JP2017138853A (ja) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | 情報処理装置およびプログラム |
JP2017138852A (ja) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | 情報処理装置、記憶装置およびプログラム |
-
2017
- 2017-06-19 US US15/626,623 patent/US10339067B2/en active Active
-
2018
- 2018-06-14 CN CN201880038630.4A patent/CN110730956B/zh active Active
- 2018-06-14 KR KR1020197038242A patent/KR102350539B1/ko active IP Right Grant
- 2018-06-14 JP JP2019569799A patent/JP6928123B2/ja active Active
- 2018-06-14 EP EP18821107.2A patent/EP3642722B1/en active Active
- 2018-06-14 WO PCT/US2018/037460 patent/WO2018236657A1/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020524339A5 (ja) | ||
KR102350539B1 (ko) | 메모리 시스템에서 페이지 이송 오버헤드를 감소시키기 위한 메커니즘 | |
JP5373817B2 (ja) | フェッチ保護を有する動的アドレス変換 | |
US9880944B2 (en) | Page replacement algorithms for use with solid-state drives | |
US10430346B2 (en) | DDR storage adapter | |
TW219986B (ja) | ||
US10353601B2 (en) | Data movement engine | |
JP2011509471A (ja) | フレーム管理を有する動的アドレス変換 | |
TWI417724B (zh) | 使用替代頁池管理直接記憶器存取寫入頁錯誤之電腦執行方法、裝置、及電腦程式產品 | |
CN106201331A (zh) | 用于写入数据的方法及设备与储存媒体 | |
WO2018189511A1 (en) | Cache-based communication between execution threads of a data processing system | |
US10565126B2 (en) | Method and apparatus for two-layer copy-on-write | |
US10635614B2 (en) | Cooperative overlay | |
CN107025179B (zh) | 存储器设备及方法 | |
JP2018106573A (ja) | ストレージ制御装置及び制御プログラム | |
CN114080587A (zh) | 输入-输出存储器管理单元对访客操作系统缓冲区和日志的访问 | |
US11561906B2 (en) | Rinsing cache lines from a common memory page to memory | |
EP3256947B1 (en) | Mapping apertures of different sizes | |
WO2016013098A1 (ja) | 物理計算機及び仮想計算機移行方法 | |
US20230019878A1 (en) | Systems, methods, and devices for page relocation for garbage collection | |
US20210191641A1 (en) | Systems and methods for reducing instruction code memory footprint for multiple processes executed at a coprocessor |