-
公开(公告)号:US20230021067A1
公开(公告)日:2023-01-19
申请号:US17481352
申请日:2021-09-22
Applicant: VMWARE, INC.
Inventor: MARCOS K. AGUILERA , Keerthi Kumar , Pramod Kumar , Pratap Subrahmanyam , Sairam Veeraswamy , Rajesh Venkatasubramanian
IPC: G06F3/06
Abstract: Disclosed are various embodiments for improving resiliency and performance of clustered memory. A computing device can acquire a chunk of byte-addressable memory from a cluster memory host. The computing device can then identify an active set of allocated memory pages and an inactive set of allocated memory pages for a process executing on the computing device. Next, the computing device can store the active set of allocated memory pages for the process in the memory of the computing device. Finally, the computing device can store the inactive set of allocated memory pages for the process in the chunk of byte-addressable memory of the cluster memory host.
-
公开(公告)号:US20220405121A1
公开(公告)日:2022-12-22
申请号:US17351488
申请日:2021-06-18
Applicant: VMware, Inc.
Abstract: Disclosed are various embodiments for decreasing the amount of time spent processing interrupts by switching contexts in parallel with processing an interrupt. An interrupt request can be received during execution of a process in a less privileged user mode. Then, the current state of the process can be saved. Next, a switch from the less privileged mode to a more privileged mode can be made. The interrupt request is then processed while in the more privileged mode. Subsequently or in parallel, and possibly prior to completion of the processing the interrupt request, another switch from the more privileged mode to the less privileged mode can be made.
-
公开(公告)号:US11422860B2
公开(公告)日:2022-08-23
申请号:US16584880
申请日:2019-09-26
Applicant: VMware, Inc.
Inventor: Venkata Subhash Reddy Peddamallu , Kiran Tati , Rajesh Venkatasubramanian , Pratap Subrahmanyam
Abstract: In one embodiment, an operating system (OS) or hypervisor running on a computer system can allocate a portion of the volatile memory of the computer system as a persistent memory allocation. The OS/hypervisor can further receive a signal from the computer system's Basic Input/Output System (BIOS) indicating an alternating current (AC) power loss or cycle event and, in response to the signal, can save data in the persistent memory allocation to a nonvolatile backing store. Then, upon restoration of AC power to the computer system, the OS/hypervisor can restore the saved data from the nonvolatile backing store to the persistent memory allocation.
-
公开(公告)号:US11334380B2
公开(公告)日:2022-05-17
申请号:US16698994
申请日:2019-11-28
Applicant: VMWARE, INC.
Inventor: Marcos Aguilera , Keerthi Kumar , Pramod Kumar , Arun Ramanathan , Pratap Subrahmanyam , Sairam Veeraswamy , Rajesh Venkatasubramanian , Manish Mishra
IPC: G06F9/46 , G06F9/455 , G06F3/06 , G06F16/907 , G06F12/1009
Abstract: The disclosure provides an approach for creating a pool of memory out of local memories of host machines, and providing that pool for the hosts to use. The pool is managed by a controller that keeps track of memory usage and allocated memory among hosts. The controller allocates or reclaims memory between hosts, as needed by the hosts. Memory allocated from a second host to a first host may then be divided into smaller portions by the first host, and further allocated to virtual machines executing within the first host.
-
公开(公告)号:US11204912B2
公开(公告)日:2021-12-21
申请号:US17073221
申请日:2020-10-16
Applicant: VMware, Inc.
Inventor: Pratap Subrahmanyam , Zongwei Zhou , Xavier Deguillard , Rajesh Venkatasubramanian
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.
-
公开(公告)号:US11068400B2
公开(公告)日:2021-07-20
申请号:US16256571
申请日:2019-01-24
Applicant: VMware, Inc.
Inventor: Aasheesh Kolli , Irina Calciu , Jayneel Gandhi , Pratap Subrahmanyam
IPC: G06F12/0831 , G06F12/109 , G06F9/50 , G06F11/07 , G06F12/0817
Abstract: Disclosed is a technique in which an application can record changes it makes to physical memory. In the technique, the application specifies a virtual memory region which is converted to a plurality of cache lines, each of which is monitored for changes by a device connected to a coherence interconnect coupled to the processor caches. The application sends a start signal to start the logging process and an end signal to stop the process. During the logging process, when a change occurs to one of the cache lines, an undo entry corresponding to the change is created and entered into a transaction log residing in persistent memory. The transaction log containing the undo entries makes the set of changes recorded in the transaction log atomic. If a failure occurs, the recorded changes can be undone as if they never occurred.
-
公开(公告)号:US10859289B2
公开(公告)日:2020-12-08
申请号:US15662071
申请日:2017-07-27
Applicant: VMware, Inc.
Inventor: Carl A. Waldspurger , Michael Nelson , Daniel J. Scales , Pratap Subrahmanyam
Abstract: To generate a checkpoint for a virtual machine (VM), first, while the VM is still running, a copy-on-write (COW) disk file is created pointing to a parent disk file that the VM is using. Next, the VM is stopped, the VM's memory is marked COW, the device state of the VM is saved to memory, the VM is switched to use the COW disk file, and the VM begins running again for substantially the remainder of the checkpoint generation. Next, the device state that was stored in memory and the unmodified VM memory pages are saved to a checkpoint file. Also, a copy may be made of the parent disk file for retention as part of the checkpoint, or the original parent disk file may be retained as part of the checkpoint. If a copy of the parent disk file was made, then the COW disk file may be committed to the original parent disk file.
-
公开(公告)号:US10706005B2
公开(公告)日:2020-07-07
申请号:US15836577
申请日:2017-12-08
Applicant: VMware, Inc.
Inventor: Michael Wei , Marcos Aguilera , Irina Calciu , Stanko Novakovic , Lalith Suresh , Jayneel Gandhi , Nadav Amit , Pratap Subrahmanyam , Xavier Deguillard , Kiran Tati , Rajesh Venkatasubramanian
IPC: G06F15/173 , G06F16/182
Abstract: Exemplary methods, apparatuses, and systems include a distributed memory agent within a first node intercepting an operating system request to open a file from an application running on the first node. The request includes a file identifier, which the distributed memory agent transmits to a remote memory manager. The distributed memory agent receives, from the remote memory manager, a memory location within a second node for the file identifier and information to establish a remote direct memory access channel between the first node and the second node. In response to the request to open the file, the distributed memory agent establishes the remote direct memory access channel between the first node and the second node. The remote direct memory access channel allows the first node to read directly from or write directly to the memory location within the second node while bypassing an operating system of the second node.
-
公开(公告)号:US10592425B2
公开(公告)日:2020-03-17
申请号:US15971929
申请日:2018-05-04
Applicant: VMware, Inc.
Inventor: Doug Covelli , Rajesh Venkatasubramanian , Richard Brunner , Pratap Subrahmanyam
IPC: G06F12/10 , G06F12/1009 , G06F12/0804
Abstract: Techniques for virtualizing NVDIMM WPQ flushing with minimal overhead are provided. In one set of embodiments, a hypervisor of a computer system can allocate a virtual flush hint address (FHA) for a virtual machine (VM), where the virtual flush hint address is associated with one or more physical FHAs corresponding to one or more physical memory controllers of the computer system. The hypervisor can further determine whether one or more physical NVDIMMs of the computer system support WPQ flushing. If so, the hypervisor can write protect a guest physical address (GPA) to host physical address (HPA) mapping for the virtual FHA in the page tables of the computer system, thereby enabling the hypervisor to trap VM writes to the virtual FHA and propagate those write to the physical FHAs of the system.
-
公开(公告)号:US20200042357A1
公开(公告)日:2020-02-06
申请号:US16584880
申请日:2019-09-26
Applicant: VMware, Inc.
Inventor: Venkata Subhash Reddy Peddamallu , Kiran Tati , Rajesh Venkatasubramanian , Pratap Subrahmanyam
Abstract: Techniques for implementing OS/hypervisor-based persistent memory are provided. In one embodiment, an OS or hypervisor running on a computer system can allocate a portion of the volatile memory of the computer system as a persistent memory allocation. The OS/hypervisor can further receive a signal from the computer system's BIOS indicating an AC power loss or cycle event and, in response to the signal, can save data in the persistent memory allocation to a nonvolatile backing store. Then, upon restoration of AC power to the computer system, the OS/hypervisor can restore the saved data from the nonvolatile backing store to the persistent memory allocation.
-
-
-
-
-
-
-
-
-