Patents by Inventor Deng Liu
Deng Liu has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9182927Abstract: Techniques for utilizing flash storage as an extension of hard disk (HDD) based storage are provided. In one embodiment, a computer system can store a first subset of blocks of a logical file in a first physical file residing on a flash storage tier, and a second subset of blocks of the logical file in a second physical file residing on an HDD storage tier. The computer system can then receive an I/O request directed to one or more blocks of the logical file and process the I/O request by accessing the flash storage tier or the HDD storage tier, the accessing being based on whether the one or more blocks are part of the first subset of blocks stored in the first physical file.Type: GrantFiled: June 28, 2013Date of Patent: November 10, 2015Assignee: VMware, Inc.Inventors: Deng Liu, Sandeep Uttamchandani, Li Zhou, Mayank Rawat
-
Patent number: 9183151Abstract: Systems and techniques are described for thread cache allocation. A described technique includes monitoring input and output accesses for a plurality of threads executing on a computing device that includes a cache comprising a quantity of memory blocks, determining a respective reuse intensity for each of the threads, determining a respective read ratio for each of the threads, determining a respective quantity of memory blocks for each of the partitions by optimizing a combination of cache utilities, each cache utility being based on the respective reuse intensity, the respective read ratio, and a respective hit ratio for a particular partition, and resizing one or more of the partitions to be equal to the respective quantity of the memory blocks for the partition.Type: GrantFiled: August 30, 2013Date of Patent: November 10, 2015Assignee: VMware, Inc.Inventors: Sandeep Uttamchandani, Li Zhou, Fei Meng, Deng Liu
-
Publication number: 20150277791Abstract: A method for allocating storage for a virtual machine includes receiving a request to allocate a block of disk storage on a physical disk to a virtual disk associated with the virtual machine. The method also includes identifying a plurality of available blocks on the physical disk, each of the plurality of available blocks defining a radial distance from a center axis of a platter of the physical disk. The method further includes determining which of the plurality of available blocks has a greatest radial distance from the center axis of the platter and, based on the determining, selecting an allocation block from the plurality of available blocks, the allocation block having the greatest radial distance from the center axis of the platter. The method also includes allocating the allocation block to the virtual machine.Type: ApplicationFiled: March 31, 2014Publication date: October 1, 2015Inventors: Xinhui LI, Luke LU, Deng LIU
-
Patent number: 9075731Abstract: Techniques for achieving crash consistency when performing write-behind caching using a flash storage-based cache are provided. In one embodiment, a computer system receives from a virtual machine a write request that includes data to be written to a virtual disk and caches the data in a flash storage-based cache. The computer system further logs a transaction entry for the write request in the flash storage-based cache, where the transaction entry includes information usable for flushing the data from the flash storage-based cache to a storage device storing the virtual disk. The computer system then communicates an acknowledgment to the VM indicating that the write request has been successfully processed.Type: GrantFiled: January 23, 2013Date of Patent: July 7, 2015Assignee: VMware, Inc.Inventors: Deng Liu, Thomas A. Phelan, Ramkumar Vadivelu, Wei Zhang, Sandeep Uttamchandani, Li Zhou
-
Publication number: 20150120994Abstract: Techniques for automatically allocating space in a flash storage-based cache are provided. In one embodiment, a computer system collects I/O trace logs for a plurality of virtual machines or a plurality of virtual disks and determines cache utility models for the plurality of virtual machines or the plurality of virtual disks based on the I/O trace logs. The cache utility model for each virtual machine or each virtual disk defines an expected utility of allocating space in the flash storage-based cache to the virtual machine or the virtual disk over a range of different cache allocation sizes. The computer system then calculates target cache allocation sizes for the plurality of virtual machines or the plurality of virtual disks based on the cache utility models and allocates space in the flash storage-based cache based on the target cache allocation sizes.Type: ApplicationFiled: January 8, 2015Publication date: April 30, 2015Inventors: Sandeep Uttamchandani, Li Zhou, Fei Meng, Deng Liu
-
Publication number: 20150067262Abstract: Systems and techniques are described for thread cache allocation. A described technique includes monitoring input and output accesses for a plurality of threads executing on a computing device that includes a cache comprising a quantity of memory blocks, determining a respective reuse intensity for each of the threads, determining a respective read ratio for each of the threads, determining a respective quantity of memory blocks for each of the partitions by optimizing a combination of cache utilities, each cache utility being based on the respective reuse intensity, the respective read ratio, and a respective hit ratio for a particular partition, and resizing one or more of the partitions to be equal to the respective quantity of the memory blocks for the partition.Type: ApplicationFiled: August 30, 2013Publication date: March 5, 2015Applicant: VMware, Inc.Inventors: Sandeep Uttamchandani, Li Zhou, Fei Meng, Deng Liu
-
Patent number: 8949531Abstract: Techniques for automatically allocating space in a flash storage-based cache are provided. In one embodiment, a computer system collects I/O trace logs for a plurality of virtual machines or a plurality of virtual disks and determines cache utility models for the plurality of virtual machines or the plurality of virtual disks based on the I/O trace logs. The cache utility model for each virtual machine or each virtual disk defines an expected utility of allocating space in the flash storage-based cache to the virtual machine or the virtual disk over a range of different cache allocation sizes. The computer system then calculates target cache allocation sizes for the plurality of virtual machines or the plurality of virtual disks based on the cache utility models and allocates space in the flash storage-based cache based on the target cache allocation sizes.Type: GrantFiled: December 4, 2012Date of Patent: February 3, 2015Assignee: VMware, Inc.Inventors: Sandeep Uttamchandani, Li Zhou, Fei Meng, Deng Liu
-
Publication number: 20150006788Abstract: Techniques for utilizing flash storage as an extension of hard disk (HDD) based storage are provided. In one embodiment, a computer system can store a first subset of blocks of a logical file in a first physical file residing on a flash storage tier, and a second subset of blocks of the logical file in a second physical file residing on an HDD storage tier. The computer system can then receive an I/O request directed to one or more blocks of the logical file and process the I/O request by accessing the flash storage tier or the HDD storage tier, the accessing being based on whether the one or more blocks are part of the first subset of blocks stored in the first physical file.Type: ApplicationFiled: June 28, 2013Publication date: January 1, 2015Inventors: Deng Liu, Sandeep Uttamchandani, Li Zhou, Mayank Rawat
-
Publication number: 20150006787Abstract: Techniques for dynamically managing the placement of blocks of a logical file between a flash storage tier and an HDD storage tier are provided. In one embodiment, a computer system can collect I/O statistics pertaining to the logical file, where a first subset of blocks of the logical file are stored on the flash storage tier and where a second subset of blocks of the logical file are stored on the HDD storage tier. The computer system can further generate a heat map for the logical file based on the I/O statistics, where the heat map indicates, for each block of the logical file, the number of times the block has been accessed. The computer system can then identify, using the heat map, one or more blocks of the logical file as being performance-critical blocks, and can move data between the flash and HDD storage tiers such that the performance-critical blocks are placed on the flash storage tier.Type: ApplicationFiled: June 28, 2013Publication date: January 1, 2015Inventors: Deng Liu, Wei Zhang, Xiaoyun Zhu, Mayank Rawat, Sandeep Uttamchandani, Li Zhou, Jianzhe Tai
-
Publication number: 20140344504Abstract: Techniques for managing space in a flash storage-based cache are provided. In one embodiment, a computer system can calculate “ratio of effective cache space” (rECS) values for a plurality of VMs, where each VM has a cache allocation comprising a subset of a global pool of cache blocks in the flash storage-based cache, and where the rECS value for the VM indicates a proportion of the subset that has been populated with cached data and re-accessed by the VM within a current time window. The computer system can further determine a new cache allocation size for at least one VM in the plurality of VMs based on the rECS values. The computer system can then adjust the number of cache blocks in the at least one VM's cache allocation based on the new cache allocation size.Type: ApplicationFiled: May 17, 2013Publication date: November 20, 2014Applicant: VMware, Inc.Inventors: Tian Luo, Deng Liu
-
Publication number: 20140325141Abstract: A computer system that employs a solid-state memory device as a physical storage resource includes a hypervisor that is capable of supporting TRIM commands issued by virtual machines running in the computer system. When a virtual machine issues a TRIM command to its corresponding virtual storage device to invalidate data stored therein, the TRIM command is received at an interface layer in the hypervisor that translates the TRIM command to a SCSI command known as UMMAP. A SCSI virtualization layer converts the UNMAP command to a file system command to delete portions of the virtual storage device that is maintained as a file in the hypervisor's file system. Upon receiving the delete commands, the hypervisor's file system driver generates a TRIM command to invalidate the data stored in the solid-state memory device at locations corresponding to the portions of the file that are to be deleted.Type: ApplicationFiled: April 30, 2013Publication date: October 30, 2014Applicant: WMware Inc.Inventors: Deng LIU, Thomas A. PHELAN
-
Publication number: 20140244898Abstract: An I/O hint framework is provided. In one embodiment, a computer system can receive an I/O command originating from a virtual machine (VM), where the I/O command identifies a data block of a virtual disk. The computer system can further extract hint metadata from the I/O command, where the hint metadata includes one or more characteristics of the data block that are relevant for determining how to cache the data block in a flash storage-based cache. The computer system can then make the hint metadata available to a caching module configured to manage the flash storage-based cache.Type: ApplicationFiled: February 27, 2013Publication date: August 28, 2014Applicant: VMWARE, INC.Inventors: Deng Liu, Thomas A. Phelan, Li Zhou, Ramkumar Vadivelu, Sandeep Uttamchandani
-
Publication number: 20140206218Abstract: Disclosed is an electrical connector comprising: at least one flexible electrically connecting element having a plurality of terminals at each end thereof; a first insulation element and a second insulation element configured to position said terminals for electrically connecting with a socket located on a printed circuit board, wherein said first insulation element has a first sidewall and said second insulation element has a second sidewall; and a supporting element having at least one sidewall, configured to engage with said first insulation element and second insulation element. Wherein a displacement space is defined between said at least one sidewall of said supporting element and at least one of said first sidewall and second sidewall to allow said first and second insulation elements to move relative to said supporting element. This present invention also provides an electrical connector assembly.Type: ApplicationFiled: March 25, 2014Publication date: July 24, 2014Applicant: 3M INNOVATIVE PROPERTIES COMPANYInventors: Deng Liu, Qilin Chen, Steven Feldman, Steven A. Neu
-
Publication number: 20140208000Abstract: Techniques for surfacing host-side flash storage capacity to a plurality of VMs running on a host system are provided. In one embodiment, the host system creates, for each VM in the plurality of VMs, a flash storage space allocation in a flash storage device that is locally attached to the host system. The host system then causes the flash storage space allocation to be readable and writable by the VM as a virtual flash memory device.Type: ApplicationFiled: January 23, 2013Publication date: July 24, 2014Applicant: VMware, Inc.Inventors: Thomas A. Phelan, Mayank Rawat, Kiran Madnani, Wei Zhang, Deng Liu, Sambasiva Bandarupalli
-
Publication number: 20140208001Abstract: Techniques for achieving crash consistency when performing write-behind caching using a flash storage-based cache are provided. In one embodiment, a computer system receives from a virtual machine a write request that includes data to be written to a virtual disk and caches the data in a flash storage-based cache. The computer system further logs a transaction entry for the write request in the flash storage-based cache, where the transaction entry includes information usable for flushing the data from the flash storage-based cache to a storage device storing the virtual disk. The computer system then communicates an acknowledgment to the VM indicating that the write request has been successfully processed.Type: ApplicationFiled: January 23, 2013Publication date: July 24, 2014Applicant: VMware, Inc.Inventors: Deng Liu, Thomas A. Phelan, Ramkumar Vadivelu, Wei Zhang, Sandeep Uttamchandani, Li Zhou
-
Publication number: 20140156910Abstract: Techniques for automatically allocating space in a flash storage-based cache are provided. In one embodiment, a computer system collects I/O trace logs for a plurality of virtual machines or a plurality of virtual disks and determines cache utility models for the plurality of virtual machines or the plurality of virtual disks based on the I/O trace logs. The cache utility model for each virtual machine or each virtual disk defines an expected utility of allocating space in the flash storage-based cache to the virtual machine or the virtual disk over a range of different cache allocation sizes. The computer system then calculates target cache allocation sizes for the plurality of virtual machines or the plurality of virtual disks based on the cache utility models and allocates space in the flash storage-based cache based on the target cache allocation sizes.Type: ApplicationFiled: December 4, 2012Publication date: June 5, 2014Inventors: Sandeep Uttamchandani, Li Zhou, Fei Meng, Deng Liu
-
Patent number: 8721350Abstract: Disclosed is an electrical connector comprising: at least one flexible electrically connecting element having a plurality of terminals at each end thereof; a first insulation element and a second insulation element configured to position said terminals for electrically connecting with a socket located on a printed circuit board, wherein said first insulation element has a first sidewall and said second insulation element has a second sidewall; and a supporting element having at least one sidewall, configured to engage with said first insulation element and second insulation element. Wherein a displacement space is defined between said at least one sidewall of said supporting element and at least one of said first sidewall and second sidewall to allow said first and second insulation elements to move relative to said supporting element. This present invention also provides an electrical connector assembly.Type: GrantFiled: March 14, 2011Date of Patent: May 13, 2014Assignee: 3M Innovative Properties CompanyInventors: Deng Liu, Qilin Chen, Steven Feldman, Steven A. Neu
-
Publication number: 20140115256Abstract: A technique for efficient cache management demotes a unit of data from a higher cache level to a lower cache level in a cache hierarchy when the higher level cache evicts the unit of data. In a virtualization computing environment, eviction of the unit of data may be inferred by observing privileged memory and disk operations performed by a guest operating system and trapped by virtualization software for execution. When the unit of data is inferred to be evicted, the unit of data is demoted by transferring the unit of data into the lower cache level. This technique enables exclusive caching without direct involvement or modification of the guest operating system. In alternative embodiments, a pseudo-driver installed within the guest operating system explicitly tracks memory operations and transmits page eviction information to the lower level cache, which is able to cache evicted pages while maintaining cache exclusivity.Type: ApplicationFiled: October 18, 2012Publication date: April 24, 2014Applicant: VMware, Inc.Inventors: Deng Liu, Daniel J. Scales
-
Publication number: 20140059292Abstract: Techniques for using a host-side cache to accelerate virtual machine (VM) I/O are provided. In one embodiment, the hypervisor of a host system can intercept an I/O request from a VM running on the host system, where the I/O request is directed to a virtual disk residing on a shared storage device. The hypervisor can then process the I/O request by accessing a host-side cache that resides one or more cache devices distinct from the shared storage device, where the accessing of the host-side cache is transparent to the VM.Type: ApplicationFiled: June 20, 2013Publication date: February 27, 2014Inventors: Thomas A. Phelan, Mayank Rawat, Deng Liu, Kiran Madnani, Sambasiva Bandarupalli
-
Publication number: 20130012069Abstract: Disclosed is an electrical connector comprising: at least one flexible electrically connecting element having a plurality of terminals at each end thereof; a first insulation element and a second insulation element configured to position said terminals for electrically connecting with a socket located on a printed circuit board, wherein said first insulation element has a first sidewall and said second insulation element has a second sidewall; and a supporting element having at least one sidewall, configured to engage with said first insulation element and second insulation element. Wherein a displacement space is defined between said at least one sidewall of said supporting element and at least one of said first sidewall and second sidewall to allow said first and second insulation elements to move relative to said supporting element. This present invention also provides an electrical connector assembly.Type: ApplicationFiled: March 14, 2011Publication date: January 10, 2013Inventors: Deng Liu, Qilin Chen, Steven Feldman, Steven A. Neu