JP2017510925A5 - - Google Patents

Download PDF

Info

Publication number
JP2017510925A5
JP2017510925A5 JP2017502751A JP2017502751A JP2017510925A5 JP 2017510925 A5 JP2017510925 A5 JP 2017510925A5 JP 2017502751 A JP2017502751 A JP 2017502751A JP 2017502751 A JP2017502751 A JP 2017502751A JP 2017510925 A5 JP2017510925 A5 JP 2017510925A5
Authority
JP
Japan
Prior art keywords
cache line
version
source
duplicate
version value
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
JP2017502751A
Other languages
English (en)
Other versions
JP2017510925A (ja
JP6588080B2 (ja
Filing date
Publication date
Priority claimed from US14/530,354 external-priority patent/US9898414B2/en
Application filed filed Critical
Publication of JP2017510925A publication Critical patent/JP2017510925A/ja
Publication of JP2017510925A5 publication Critical patent/JP2017510925A5/ja
Application granted granted Critical
Publication of JP6588080B2 publication Critical patent/JP6588080B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (15)

  1. 方法であって、
    ローカルノードのメモリにおいて、ソースノード上のソースキャッシュラインのコピーを保持するための複製キャッシュラインを生成するステップを備え、前記複製キャッシュラインは、バージョンビットとデータビットとを含み、前記バージョンビットは、バージョン値に設定され、
    前記複製キャッシュラインを指し示すポインタを生成するステップを備え、前記ポインタの値は、前記バージョン値を含み、
    前記ポインタを用いて、前記複製キャッシュラインに対してメモリ操作を実行するステップを備え、
    前記メモリ操作を実行するステップは、
    前記ポインタに含まれるバージョン値と、前記複製キャッシュラインの前記バージョンビットが設定された前記バージョン値とを比較するステップと、
    前記比較に基づいて、メモリ破損が発生しているか否かを判断するステップとを含む、方法。
  2. 前記複製キャッシュラインを生成するステップは、
    前記ソースキャッシュラインのバージョン値を判断するステップと、
    前記バージョンビットを前記ソースキャッシュラインのバージョン値に設定するステップとを含む、請求項1に記載の方法。
  3. 前記バージョン値は、メモリ割り当て要求に応答して、前記ソースノードによって生成される、請求項2に記載の方法。
  4. 前記バージョン値を比較するステップは、
    前記複製キャッシュラインが無効であるか否かを判断するステップと、
    前記複製キャッシュラインが無効であるという決定に応答して、前記ソースキャッシュラインを前記複製キャッシュラインにコピーするステップとを含む、請求項1〜3のいずれか1項に記載の方法。
  5. 前記ローカルノードによって、前記ソースキャッシュラインに伝播されていない複製キャッシュラインの1つ以上のアップデートをストアバッファに格納するステップと、
    前記複製キャッシュラインが無効であるという決定に応答して、前記1つ以上のアップデートを前記複製キャッシュラインに伝播するステップとをさらに備える、請求項4に記載の方法。
  6. メモリ破損が発生した場合、トラップ操作を実行するステップをさらに備える、請求項1〜5のいずれか1項に記載の方法。
  7. 前記トラップ操作を実行するステップは、メモリ破損が発生したことをアプリケーションに通知するステップを含む、請求項6に記載の方法。
  8. 前記トラップ操作を実行するステップは、前記メモリ操作を終了させるステップを含む、請求項6に記載の方法。
  9. コンピュータシステムであって、
    1つ以上のコンピューティングノードを備え、前記1つ以上のコンピューティングノードの各コンピューティングノードは、
    前記各コンピューティングノードのメモリにおいて、前記1つ以上のコンピューティングノードに属するソースノード上のソースキャッシュラインのコピーを保持するための複製キャッシュラインを生成するように構成され、前記複製キャッシュラインは、バージョンビットとデータビットとを含み、前記バージョンビットは、バージョン値に設定され、
    前記複製キャッシュラインを指し示すポインタを生成するように構成され、前記ポインタの値は、前記バージョン値を含み、
    前記ポインタを用いて、前記複製キャッシュラインに対してメモリ操作を実行するように構成され、
    前記メモリ操作は、
    前記ポインタに含まれるバージョン値と、前記複製キャッシュラインの前記バージョンビットが設定された前記バージョン値とを比較するステップと、
    前記比較に基づいて、前記複製キャッシュラインが破損しているか否かを判断するステップとを含む、システム。
  10. 複製キャッシュラインを生成するために、前記1つ以上のコンピューティングノードの各コンピューティングノードは、前記ソースキャッシュラインのバージョン値を判断し、前記バージョンビットを前記ソースキャッシュラインのバージョン値に設定するように構成されている、請求項9に記載のシステム。
  11. 前記バージョン値は、ソースノードによって、前記1つ以上のコンピューティングノードのコンピューティングノード毎に生成され、
    前記ソースノードは、メモリ割り当て要求に応答して、バージョン値を生成するように構成されている、請求項10に記載のシステム。
  12. 前記1つ以上のコンピューティングノードのコンピューティングノード毎に前記バージョン値を比較するために、各コンピューティングノードは、前記複製キャッシュラインが無効であるか否かを判断し、前記複製キャッシュラインが無効である場合、前記ソースキャッシュラインを前記複製キャッシュラインにコピーするように構成されている、請求項9〜11のいずれか1項に記載のシステム。
  13. 各コンピューティングノードは、前記1つ以上のコンピューティングノードのコンピューティングノード毎に、
    前記ソースキャッシュラインに伝播されていない複製キャッシュラインの1つ以上のアップデートをストアバッファに格納し、
    前記複製キャッシュラインが無効であるという決定に応答して、前記1つ以上のアップデートを前記複製キャッシュラインに伝播するように構成されている、請求項9〜12のいずれか1項に記載のシステム。
  14. 前記1つ以上のコンピューティングノードのコンピューティングノード毎にトラップ操作を実行するために、1つ以上のコンピューティングノードは、メモリ破損が発生した場合、トラップ操作を実行するように構成されている、請求項9〜13のいずれか1項に記載のシステム。
  15. 1つ以上のプロセッサによって実行されると、請求項1〜8のいずれか1項に記載の方法を実行される命令を含むコンピュータプログラム
JP2017502751A 2014-03-28 2015-03-10 分散型共有メモリアプリケーションのメモリ破損の検出サポート Active JP6588080B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461972082P 2014-03-28 2014-03-28
US61/972,082 2014-03-28
US14/530,354 2014-10-31
US14/530,354 US9898414B2 (en) 2014-03-28 2014-10-31 Memory corruption detection support for distributed shared memory applications
PCT/US2015/019587 WO2015148100A1 (en) 2014-03-28 2015-03-10 Memory corruption detection support for distributed shared memory applications

Publications (3)

Publication Number Publication Date
JP2017510925A JP2017510925A (ja) 2017-04-13
JP2017510925A5 true JP2017510925A5 (ja) 2018-03-08
JP6588080B2 JP6588080B2 (ja) 2019-10-09

Family

ID=54190571

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017502751A Active JP6588080B2 (ja) 2014-03-28 2015-03-10 分散型共有メモリアプリケーションのメモリ破損の検出サポート

Country Status (5)

Country Link
US (1) US9898414B2 (ja)
EP (1) EP3123331B1 (ja)
JP (1) JP6588080B2 (ja)
CN (1) CN106164870B (ja)
WO (1) WO2015148100A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9292569B2 (en) 2012-10-02 2016-03-22 Oracle International Corporation Semi-join acceleration
US9679084B2 (en) 2013-03-14 2017-06-13 Oracle International Corporation Memory sharing across distributed nodes
US9858140B2 (en) 2014-11-03 2018-01-02 Intel Corporation Memory corruption detection
US10073727B2 (en) * 2015-03-02 2018-09-11 Intel Corporation Heap management for memory corruption detection
US9619313B2 (en) 2015-06-19 2017-04-11 Intel Corporation Memory write protection for memory corruption detection architectures
US10162694B2 (en) * 2015-12-21 2018-12-25 Intel Corporation Hardware apparatuses and methods for memory corruption detection
US10191791B2 (en) 2016-07-02 2019-01-29 Intel Corporation Enhanced address space layout randomization
US10803039B2 (en) 2017-05-26 2020-10-13 Oracle International Corporation Method for efficient primary key based queries using atomic RDMA reads on cache friendly in-memory hash index
EP3502898A1 (en) * 2017-12-20 2019-06-26 Vestel Elektronik Sanayi ve Ticaret A.S. Devices and methods for determining possible corruption of data stored in a memory of an electronic device
US10467139B2 (en) 2017-12-29 2019-11-05 Oracle International Corporation Fault-tolerant cache coherence over a lossy network
US10452547B2 (en) 2017-12-29 2019-10-22 Oracle International Corporation Fault-tolerant cache coherence over a lossy network
CN111198746B (zh) * 2018-11-20 2023-05-30 中标软件有限公司 在虚拟化集群中基于共享存储的主机间的通信方法及系统
CN113312385A (zh) * 2020-07-07 2021-08-27 阿里巴巴集团控股有限公司 缓存操作方法、装置及系统,存储介质和操作设备

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4817140A (en) 1986-11-05 1989-03-28 International Business Machines Corp. Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US5133053A (en) 1987-02-13 1992-07-21 International Business Machines Corporation Interprocess communication queue location transparency
JPH0619785A (ja) 1992-03-27 1994-01-28 Matsushita Electric Ind Co Ltd 分散共有仮想メモリーとその構成方法
DE69424597T2 (de) 1993-06-17 2001-03-01 Sun Microsystems, Inc. Erweiterbares Dateiensystem
US5684977A (en) 1995-03-31 1997-11-04 Sun Microsystems, Inc. Writeback cancellation processing system for use in a packet switched cache coherent multiprocessor system
KR0175499B1 (ko) 1996-09-11 1999-04-01 양승택 다중태그 구조의 계층 상호연결망에서의 브로드캐스트 전송방법
US6148377A (en) 1996-11-22 2000-11-14 Mangosoft Corporation Shared memory computer networks
US6151688A (en) 1997-02-21 2000-11-21 Novell, Inc. Resource management in a clustered computer system
US6292705B1 (en) 1998-09-29 2001-09-18 Conexant Systems, Inc. Method and apparatus for address transfers, system serialization, and centralized cache and transaction control, in a symetric multiprocessor system
US6230240B1 (en) 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface
JP3583657B2 (ja) 1998-09-30 2004-11-04 株式会社東芝 中継装置及び通信装置
US6633891B1 (en) * 1998-11-24 2003-10-14 Oracle International Corporation Managing replacement of data in a cache on a node based on caches of other nodes
US6295571B1 (en) 1999-03-19 2001-09-25 Times N Systems, Inc. Shared memory apparatus and method for multiprocessor systems
US6697919B2 (en) * 2000-06-10 2004-02-24 Hewlett-Packard Development Company, L.P. System and method for limited fanout daisy chaining of cache invalidation requests in a shared-memory multiprocessor system
US6917987B2 (en) 2001-03-26 2005-07-12 Intel Corporation Methodology and mechanism for remote key validation for NGIO/InfiniBand™ applications
US7013353B2 (en) 2001-03-30 2006-03-14 Intel Corporation Host-fabric adapter having an efficient multi-tasking pipelined instruction execution micro-controller subsystem
US6789143B2 (en) 2001-09-24 2004-09-07 International Business Machines Corporation Infiniband work and completion queue management via head and tail circular buffers with indirect work queue entries
US6854032B2 (en) 2001-12-04 2005-02-08 Sun Microsystems, Inc. System for accessing a region of memory using remote address translation and using a memory window table and a memory region table
US6757790B2 (en) 2002-02-19 2004-06-29 Emc Corporation Distributed, scalable data storage facility with cache memory
US7197647B1 (en) * 2002-09-30 2007-03-27 Carnegie Mellon University Method of securing programmable logic configuration data
US20060098649A1 (en) 2004-11-10 2006-05-11 Trusted Network Technologies, Inc. System, apparatuses, methods, and computer-readable media for determining security realm identity before permitting network connection
JP2004054906A (ja) * 2003-05-21 2004-02-19 Hitachi Ltd メモリアクセス方法およびその実施コンピュータシステム
US7664938B1 (en) * 2004-01-07 2010-02-16 Xambala Corporation Semantic processor systems and methods
US20060095690A1 (en) * 2004-10-29 2006-05-04 International Business Machines Corporation System, method, and storage medium for shared key index space for memory regions
US8255922B1 (en) 2006-01-09 2012-08-28 Oracle America, Inc. Mechanism for enabling multiple processes to share physical memory
US20080010417A1 (en) 2006-04-28 2008-01-10 Zeffer Hakan E Read/Write Permission Bit Support for Efficient Hardware to Software Handover
US20080065835A1 (en) * 2006-09-11 2008-03-13 Sun Microsystems, Inc. Offloading operations for maintaining data coherence across a plurality of nodes
US8504791B2 (en) * 2007-01-26 2013-08-06 Hicamp Systems, Inc. Hierarchical immutable content-addressable memory coprocessor
US7882210B2 (en) 2007-08-02 2011-02-01 Sap Ag Dynamic agent formation for efficient data provisioning
US8229945B2 (en) 2008-03-20 2012-07-24 Schooner Information Technology, Inc. Scalable database management software on a cluster of nodes using a shared-distributed flash memory
US8732386B2 (en) * 2008-03-20 2014-05-20 Sandisk Enterprise IP LLC. Sharing data fabric for coherent-distributed caching of multi-node shared-distributed flash memory
US8108361B2 (en) 2008-07-31 2012-01-31 Microsoft Corporation Efficient column based data encoding for large-scale data storage
US8275815B2 (en) * 2008-08-25 2012-09-25 International Business Machines Corporation Transactional processing for clustered file systems
US20100088309A1 (en) 2008-10-05 2010-04-08 Microsoft Corporation Efficient large-scale joining for querying of column based data encoded structures
US8195891B2 (en) * 2009-03-30 2012-06-05 Intel Corporation Techniques to perform power fail-safe caching without atomic metadata
US8856593B2 (en) 2010-04-12 2014-10-07 Sandisk Enterprise Ip Llc Failure recovery using consensus replication in a distributed flash memory system
US8516268B2 (en) 2010-08-23 2013-08-20 Raytheon Company Secure field-programmable gate array (FPGA) architecture
US8972746B2 (en) * 2010-12-17 2015-03-03 Intel Corporation Technique for supporting multiple secure enclaves
US8756363B2 (en) * 2011-07-07 2014-06-17 Oracle International Corporation Efficient storage of memory version data
US8751736B2 (en) * 2011-08-02 2014-06-10 Oracle International Corporation Instructions to set and read memory version information
US8572441B2 (en) * 2011-08-05 2013-10-29 Oracle International Corporation Maximizing encodings of version control bits for memory corruption detection
US8601473B1 (en) 2011-08-10 2013-12-03 Nutanix, Inc. Architecture for managing I/O and storage for a virtualization environment
US20150227414A1 (en) * 2012-08-31 2015-08-13 Pradeep Varma Systems And Methods Of Memory And Access Management
US9292569B2 (en) 2012-10-02 2016-03-22 Oracle International Corporation Semi-join acceleration
US8930316B2 (en) 2012-10-15 2015-01-06 Oracle International Corporation System and method for providing partition persistent state consistency in a distributed data grid
US9043559B2 (en) * 2012-10-23 2015-05-26 Oracle International Corporation Block memory engine with memory corruption detection
US9244829B2 (en) 2012-12-20 2016-01-26 Oracle International Corporation Method and system for efficient memory region deallocation
US9471590B2 (en) 2013-02-12 2016-10-18 Atlantis Computing, Inc. Method and apparatus for replicating virtual machine images using deduplication metadata
US9679084B2 (en) 2013-03-14 2017-06-13 Oracle International Corporation Memory sharing across distributed nodes

Similar Documents

Publication Publication Date Title
JP2017510925A5 (ja)
US9792187B2 (en) Facilitating test failover using a thin provisioned virtual machine created from a snapshot
GB2575401A (en) Management of snapshot in blockchain
JP2014502396A5 (ja)
JP2017068861A5 (ja)
JP2018514028A5 (ja)
JP2016508273A5 (ja)
JP2017529591A5 (ja)
JP2017535854A5 (ja)
JP2009230628A5 (ja)
JP2014096164A5 (ja)
JP2016526720A (ja) クラスタベースの記憶システムにおけるデータスクラビング
WO2018086557A1 (en) Method to consistently store large amounts of data at very high speed in persistent memory systems
JP2017518594A5 (ja)
JP2016531366A5 (ja)
JP2018503154A5 (ja)
JP2018528515A5 (ja)
JP2014175008A (ja) データ重複除去方法及び装置
JP2012123793A5 (ja)
CN106155839B (zh) 一种用于备份数据的方法与设备
JP2017531263A5 (ja)
JP6028641B2 (ja) 情報処理システム、情報処理装置の制御プログラム及び情報処理システムの制御方法
JP2015072542A5 (ja)
JP2016519346A5 (ja)
GB2586430A (en) Host aware update write