COMMIT COALESCING FOR MICRO-JOURNAL BASED TRANSACTION LOGGING

    公开(公告)号:US20170344595A1

    公开(公告)日:2017-11-30

    申请号:US15192937

    申请日:2016-06-24

    Applicant: VMware, Inc.

    CPC classification number: G06F16/2343 G06F16/2358 G06F16/2379

    Abstract: Techniques for using commit coalescing when performing micro-journal-based transaction logging are provided. In one embodiment a computer system can maintain, in a volatile memory, a globally ascending identifier, a first list of free micro-journals, and a second list of in-flight micro-journals. The computer system can further receive a transaction comprising a plurality of modifications to data or metadata stored in the byte-addressable persistent memory, select a micro-journal from the first list, obtain a lock on the globally ascending identifier, write a current value of the globally ascending identifier as a journal commit identifier into a header of the micro-journal, and write journal entries into the micro-journal corresponding to the plurality of modifications included in the transaction. The computer system can then commit the micro-journal to the byte-addressable persistent memory, increment the current value of the globally ascending identifier, and release the lock.

    Method and system for frequent checkpointing

    公开(公告)号:US09489265B2

    公开(公告)日:2016-11-08

    申请号:US14170016

    申请日:2014-01-31

    Applicant: VMware, Inc.

    Abstract: A virtualization platform provides fault tolerance for a primary virtual machine by continuously transmitting checkpoint information of the primary virtual machine to a collector process, such as a backup virtual machine. When implemented on a hardware platform comprising a multi-processor that supports nested page tables, the virtualization platform leverages the nested page table support to quickly identify memory pages that have been modified between checkpoints. The backup virtual machine provides feedback information to assist the virtualization platform in identifying candidate memory pages for transmitting actual modifications to the memory pages rather than the entire memory page as part of the checkpoint information. The virtualization platform further maintains a modification history data structure to identify memory pages that can be transmitted simultaneous with the execution of the primary virtual machine rather than while the primary virtual machine has been stunned.

    Smart prefetching for remote memory

    公开(公告)号:US12019554B2

    公开(公告)日:2024-06-25

    申请号:US17872744

    申请日:2022-07-25

    Applicant: VMware, Inc.

    CPC classification number: G06F12/0862 G06F2212/602

    Abstract: A method of prefetching memory pages from remote memory includes detecting that a cache-line access made by a processor executing an application program is an access to a cache line containing page table data of the application program, identifying data pages that are referenced by the page table data, initiating a fetch of a data page, which is one of the identified data pages, and starting a timer. If the fetch completes prior to expiration of the timer, the data page is stored in a local memory. On the other hand, if the fetch does not complete prior to expiration of timer, a presence bit of the data page in the page table data is set to indicate that the data page is not present.

Patent Agency Ranking