-
公开(公告)号:US11422860B2
公开(公告)日:2022-08-23
申请号:US16584880
申请日:2019-09-26
申请人: VMware, Inc.
发明人: Venkata Subhash Reddy Peddamallu , Kiran Tati , Rajesh Venkatasubramanian , Pratap Subrahmanyam
摘要: 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.
-
公开(公告)号:US20220129377A1
公开(公告)日:2022-04-28
申请号:US17571417
申请日:2022-01-07
申请人: VMware, Inc.
发明人: Xavier Deguillard , Ishan Banerjee , Julien Freche , Kiran Tati , Preeti Agarwal , Rajesh Venkatasubramanian
IPC分类号: G06F12/02 , G06F12/1009 , G06F12/0804
摘要: Techniques for efficiently purging non-active blocks in an NVM region of an NVM device using virtblocks are provided. In one set of embodiments, a host system can maintain, in the NVM device, a pointer entry (i.e., virtblock entry) for each allocated data block of the NVM region, where page table entries of the NVM region that refer to the allocated data block include pointers to the pointer entry, and where the pointer entry includes a pointer to the allocated data block. The host system can further determine that a subset of the allocated data blocks of the NVM region are non-active blocks and can purge the non-active blocks from the NVM device to a mass storage device, where the purging comprises updating the pointer entry for each non-active block to point to a storage location of the non-active block on the mass storage device.
-
公开(公告)号:US10706005B2
公开(公告)日:2020-07-07
申请号:US15836577
申请日:2017-12-08
申请人: VMware, Inc.
发明人: 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
摘要: 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.
-
公开(公告)号:US10691591B2
公开(公告)日:2020-06-23
申请号:US16174264
申请日:2018-10-29
申请人: VMware, Inc.
发明人: Kiran Tati , Xavier Deguillard , Ishan Banerjee , Julien Freche , Preeti Agarwal , Rajesh Venkatasubramanian
IPC分类号: G06F13/00 , G06F12/02 , G06F12/0804
摘要: Techniques for efficiently purging non-active blocks in an NVM region of an NVM device using pointer elimination are provided. In one set of embodiments, a host system can, for each level 1 (L1) page table entry of each snapshot of the NVM region, determine whether a data block of the NVM region that is pointed to by the L1 page table entry is a non-active block, and if the data block is a non-active block, remove a pointer to the data block in the L1 page table entry and reduce a reference count parameter associated with the data block by 1. If the reference count parameter has reached zero at this point, the host system purge the data block from the NVM device to the mass storage device.
-
公开(公告)号:US20200042357A1
公开(公告)日:2020-02-06
申请号:US16584880
申请日:2019-09-26
申请人: VMware, Inc.
发明人: Venkata Subhash Reddy Peddamallu , Kiran Tati , Rajesh Venkatasubramanian , Pratap Subrahmanyam
摘要: 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.
-
公开(公告)号:US10387186B2
公开(公告)日:2019-08-20
申请号:US15636527
申请日:2017-06-28
申请人: VMware, Inc.
IPC分类号: G06F9/44 , G06F9/455 , G06F9/4401 , G06F3/06 , G06F12/08
摘要: A first hypervisor uses a first version of a virtual-memory file system (VMemFS) suspends virtual machines. A second hypervisor uses a instance of the VMemFS, the version of which may be the same or different from the first version. The VMemFS is designed so that an instance of the same or a later version of the VMemFS can read and ingest information in memory written to memory by another instance of the VMemFS. Accordingly, the second hypervisor resumes the virtual machines, effecting an update or other swap of hypervisors with minimal interruption. In other examples, the swapped hypervisors support process containers or simply support virtual memory.
-
47.
公开(公告)号:US20190129800A1
公开(公告)日:2019-05-02
申请号:US15881514
申请日:2018-01-26
申请人: VMware, Inc.
发明人: Pratap Subrahmanyam , Rajesh Venkatasubramanian , Kiran Tati , Qasim Ali , Marcos Aguilera , Irina Calciu , Venkata Subhash Reddy Peddamallu , Xavier Deguillard , Yi Yao
IPC分类号: G06F11/14
摘要: Techniques for achieving application high availability via crash-consistent asynchronous replication of persistent data are provided. In one set of embodiments, an application running on a computer system can, during runtime of the application: write persistent data to a local nonvolatile data store of the computer system, write one or more log entries comprising the persistent data to a local log region of the computer system, and asynchronously copy the one or more log entries to one or more remote destinations. Then, upon detecting a failure that prevents the application from continuing execution, the computer system can copy the local log region or a remaining portion thereof to the one or more remote destinations, where the copying is performed while the computer system runs on battery power and where the application is restarted on another computer system using a persistent state derived from the copied log entries.
-
公开(公告)号:US20190065091A1
公开(公告)日:2019-02-28
申请号:US15693292
申请日:2017-08-31
申请人: VMware, Inc.
发明人: Kiran Tati , Preeti Agarwal , Julien Freche , Xavier Deguillard , Rajesh Venkatasubramanian , Ishan Banerjee
IPC分类号: G06F3/06
摘要: Techniques for using non-volatile random access memory (NVM) as volatile random access memory (RAM) are provided. In one set of embodiments, a computer system can detect that an amount of free space in a volatile RAM of the computer system has become low and, in response, can add one or more memory pages from an unused portion of an NVM of the computer system to the system's volatile RAM pool. Conversely, the computer system can detect that an amount of free space in the NVM has become low and, in response, can return the one or more memory pages from the volatile RAM pool back to the NVM.
-
公开(公告)号:US20180046581A1
公开(公告)日:2018-02-15
申请号:US15233337
申请日:2016-08-10
申请人: VMware, Inc.
发明人: Ishan Banerjee , Jui-Hao Chiang , Kiran Tati , Preeti Agarwal
IPC分类号: G06F12/1009 , G06F11/07 , G06F3/06
CPC分类号: G06F12/1009 , G06F3/0611 , G06F3/0653 , G06F3/067 , G06F9/45533 , G06F9/45558 , G06F11/073 , G06F11/079 , G06F2009/45583 , G06F2009/45591 , G06F2212/1024 , G06F2212/1032 , G06F2212/152 , G06F2212/154
摘要: Examples provide a page-fault latency feedback metric to determine performance of workloads or virtual machines (VMs) running on a VM host in a cluster. A hypervisor induces page-faults by varying a memory limit associated with a VM. Page-fault latencies are measured at each of the varying memory limits. A performance loss occurring at each page-fault latency is measured and converted to a performance score. A page-fault translation table is constructed based on the page-fault latencies and assigned performance scores. When a page-fault occurs during execution of a workload on a VM host in the cluster, a cluster manager maps the page-fault latency associated with the page-fault to a performance score in the page-fault translation table. The cluster manager computes a current workload performance or VM performance based on the page-fault latency and the performance score.
-
公开(公告)号:US09547510B2
公开(公告)日:2017-01-17
申请号:US14101787
申请日:2013-12-10
申请人: VMware, Inc.
发明人: Xavier Deguillard , Ishan Banerjee , Qasim Ali , Yury Baskakov , Kiran Tati , Rajesh Venkatasubramanian
CPC分类号: G06F9/455 , G06F9/45558 , G06F9/50 , G06F9/5016 , G06F9/5077 , G06F12/08 , G06F2009/45583 , G06F2212/152 , G06F2212/401
摘要: A system and method are disclosed for improving operation of a memory scheduler operating on a host machine supporting virtual machines (VMs) in which guest operating systems and guest applications run. For each virtual machine, the host machine hypervisor categorizes memory pages into memory usage classes and estimates the total number of pages for each memory usage class. The memory scheduler uses this information to perform memory reclamation and allocation operations for each virtual machine. The memory scheduler further selects between ballooning reclamation and swapping reclamation operations based in part on the numbers of pages in each memory usage class for the virtual machine. Calls to the guest operating system provide the memory usage class information. Memory reclamation not only can improve the performance of existing VMs, but can also permit the addition of a VM on the host machine without substantially impacting the performance of the existing and new VMs.
摘要翻译: 公开了一种系统和方法,用于改进在支持客机操作系统和来宾应用运行的虚拟机(VM)的主机上运行的存储器调度器的操作。 对于每个虚拟机,主机管理程序将内存页分为内存使用类,并估计每个内存使用类的总页数。 内存调度器使用该信息为每个虚拟机执行内存回收和分配操作。 存储器调度器还部分地基于虚拟机的每个存储器使用类别中的页数来选择气球回收和交换回收操作之间。 对客户机操作系统的调用提供了内存使用类信息。 内存回收不仅可以提高现有虚拟机的性能,还可以允许在主机上添加虚拟机,而不会对现有和新的虚拟机造成实质性的影响。
-
-
-
-
-
-
-
-
-