Patents by Inventor Ajay Gulati

Ajay Gulati 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: 10305741
    Abstract: A cloud management server and method for performing automatic placement of clients in a distributed computer system uses a list of compatible clusters to select an affinity cluster to place the clients associated with an affinity constraint. As part of the placement method, a cluster that cannot satisfy any anti-affinity constraint associated with the clients and the affinity constrain is removed from the list of compatible clusters. After the affinity cluster has been selected, at least one cluster in the distributed computer system is also selected to place clients associated with an anti-affinity constraint.
    Type: Grant
    Filed: April 10, 2017
    Date of Patent: May 28, 2019
    Assignee: VMware, Inc.
    Inventors: Parth Shah, Pradeep Padala, Ajay Gulati
  • Patent number: 10185592
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles and disk Input/Output's (IOs) to resource-creating processes based on dynamic weights that change according to the current percentage of resource utilization in the storage device. One method includes operations for assigning a first weight to a processing task that increases resource utilization of a resource for processing incoming input/output (IO) requests, and for assigning a second weight to a generating task that decreases the resource utilization of the resource. Further, the method includes an operation for dynamically adjusting the second weight based on the current resource utilization in the storage system. Additionally, the method includes an operation for allocating the CPU cycles and disk IOs to the processing task and to the generating task based on their respective first weight and second weight.
    Type: Grant
    Filed: March 20, 2017
    Date of Patent: January 22, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Gurunatha Karaje, Tomasz Barszczak, Vanco Buca, Ajay Gulati, Umesh Maheshwari
  • Publication number: 20170302523
    Abstract: A cloud management server and method for performing automatic placement of clients in a distributed computer system uses a list of compatible clusters to select an affinity cluster to place the clients associated with an affinity constraint. As part of the placement method, a cluster that cannot satisfy any anti-affinity constraint associated with the clients and the affinity constrain is removed from the list of compatible clusters. After the affinity cluster has been selected, at least one cluster in the distributed computer system is also selected to place clients associated with an anti-affinity constraint.
    Type: Application
    Filed: April 10, 2017
    Publication date: October 19, 2017
    Applicant: VMware, Inc.
    Inventors: Parth Shah, Pradeep Padala, Ajay Gulati
  • Publication number: 20170192823
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles and disk Input/Output's (IOs) to resource-creating processes based on dynamic weights that change according to the current percentage of resource utilization in the storage device. One method includes operations for assigning a first weight to a processing task that increases resource utilization of a resource for processing incoming input/output (IO) requests, and for assigning a second weight to a generating task that decreases the resource utilization of the resource. Further, the method includes an operation for dynamically adjusting the second weight based on the current resource utilization in the storage system. Additionally, the method includes an operation for allocating the CPU cycles and disk IOs to the processing task and to the generating task based on their respective first weight and second weight.
    Type: Application
    Filed: March 20, 2017
    Publication date: July 6, 2017
    Inventors: Gurunatha Karaje, Tomasz Barszczak, Vanco Buca, Ajay Gulati, Umesh Maheshwari
  • Patent number: 9686207
    Abstract: A management server and method for performing resource management operations in a distributed computer system uses at least one sampling parameter to estimate demand of a client for a resource. The sampling parameter has a correlation with at least one target performance goal of an application that the client is running. The demand estimation can then be used to make at least one decision in a resource management operation.
    Type: Grant
    Filed: January 29, 2014
    Date of Patent: June 20, 2017
    Assignee: VMware, Inc.
    Inventors: Ganesha Shanmuganathan, Anne Holler, Ajay Gulati
  • Patent number: 9686352
    Abstract: Maximum throughput of a storage unit, and workload and latency values of the storage unit corresponding to a predefined fraction of the maximum throughput are estimated based on workloads and latencies that are monitored on the storage unit. The computed metrics are usable in a variety of different applications including admission control, storage load balancing, and enforcing quality of service in a shared storage environment.
    Type: Grant
    Filed: September 29, 2016
    Date of Patent: June 20, 2017
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Ganesha Shanmuganathan, Irfan Ahmad
  • Patent number: 9621427
    Abstract: A cloud management server and method for performing automatic placement of clients in a distributed computer system uses a list of compatible clusters to select an affinity cluster to place the clients associated with an affinity constraint. As part of the placement method, a cluster that cannot satisfy any anti-affinity constraint associated with the clients and the affinity constrain is removed from the list of compatible clusters. After the affinity cluster has been selected, at least one cluster in the distributed computer system is also selected to place clients associated with an anti-affinity constraint.
    Type: Grant
    Filed: December 6, 2013
    Date of Patent: April 11, 2017
    Assignee: VMware, Inc.
    Inventors: Parth Shah, Pradeep Padala, Ajay Gulati
  • Patent number: 9600337
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles and disk Input/Output's (IOs) to resource-creating processes based on dynamic weights that change according to the current percentage of resource utilization in the storage device. One method includes operations for assigning a first weight to a processing task that increases resource utilization of a resource for processing incoming input/output (IO) requests, and for assigning a second weight to a generating task that decreases the resource utilization of the resource. Further, the method includes an operation for dynamically adjusting the second weight based on the current resource utilization in the storage system. Additionally, the method includes an operation for allocating the CPU cycles and disk IOs to the processing task and to the generating task based on their respective first weight and second weight.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: March 21, 2017
    Assignee: Nimble Storage, Inc.
    Inventors: Gurunatha Karaje, Tomasz Barszczak, Vanco Buca, Ajay Gulati, Umesh Maheshwari
  • Patent number: 9563453
    Abstract: One or more embodiments of the present invention provide a technique for effectively managing virtualized computing systems with an unlimited number of hardware resources. Host systems included in a virtualized computer system are organized into a scalable, peer-to-peer (P2P) network in which host systems arrange themselves into a network overlay to communicate with one another. The network overlay enables the host systems to perform a variety of operations, which include dividing computing resources of the host systems among a plurality of virtual machines (VMs), load balancing VMs across the host systems, and performing an initial placement of a VM in one of the host systems.
    Type: Grant
    Filed: October 7, 2014
    Date of Patent: February 7, 2017
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Irfan Ahmad, Ganesha Shanmuganathan, Carl A. Waldspurger
  • Publication number: 20170019465
    Abstract: Maximum throughput of a storage unit, and workload and latency values of the storage unit corresponding to a predefined fraction of the maximum throughput are estimated based on workloads and latencies that are monitored on the storage unit. The computed metrics are usable in a variety of different applications including admission control, storage load balancing, and enforcing quality of service in a shared storage environment.
    Type: Application
    Filed: September 29, 2016
    Publication date: January 19, 2017
    Inventors: Ajay GULATI, Ganesha SHANMUGANATHAN, Irfan AHMAD
  • Publication number: 20170017524
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles in a storage system. One method includes operations for receiving requests to be processed, and for associating each request to one task. A foreground task is for processing input/output requests, and the foreground task includes one or more flows. Each flow is associated with a queue and a flow counter value, where each queue is configured to hold requests. The method further includes an operation for selecting one task for processing by the CPU based on an examination of the number of cycles processed by the CPU for each task. When the selected task is the foreground task, the flow having the lowest flow counter is selected. The CPU processes a request from the queue of the selected flow, and the flow counter of the selected flow is increased based on the data consumption of the processed task.
    Type: Application
    Filed: September 27, 2016
    Publication date: January 19, 2017
    Inventors: Gurunatha Karaje, Ajay Gulati, Umesh Maheshwari, Tomasz Barszczak, Vanco Buca
  • Patent number: 9535789
    Abstract: Systems and methods are disclosed that allow for transparently recovering from an uncorrected multi-bit error of arbitrary length located at a memory address. Storing one or more parity pages, for a set of pages in system memory, such that a page in the set of pages may be reconstructed using one of the parity pages is disclosed. Storing an indication of one or more page'disk location such that the one or more pages may be reconstructed by refilling the page from disk is also disclosed.
    Type: Grant
    Filed: May 5, 2014
    Date of Patent: January 3, 2017
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Abhishek Chaturvedi, Gregory T. Harmon, Anil Rao
  • Patent number: 9509621
    Abstract: A shared input/output (IO) resource is managed in a decentralized manner. Each of multiple hosts having IO access to the shared resource, computes an average latency value that is normalized with respect to average IO request sizes, and stores the computed normalized latency value for later use. The normalized latency values thus computed and stored may be used for a variety of different applications, including enforcing a quality of service (QoS) policy that is applied to the hosts, detecting a condition known as an anomaly where a host that is not bound by a QoS policy accesses the shared resource at a rate that impacts the level of service received by the plurality of hosts that are bound by the QoS policy, and migrating workloads between storage arrays to achieve load balancing across the storage arrays.
    Type: Grant
    Filed: April 28, 2014
    Date of Patent: November 29, 2016
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Irfan Ahmad, Jyothir Ramanan, Carl A. Waldspurger
  • Patent number: 9483187
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles in a storage system. One method includes operations for receiving requests to be processed, and for associating each request to one task. A foreground task is for processing input/output requests, and the foreground task includes one or more flows. Each flow is associated with a queue and a flow counter value, where each queue is configured to hold requests. The method further includes an operation for selecting one task for processing by the CPU based on an examination of the number of cycles processed by the CPU for each task. When the selected task is the foreground task, the flow having the lowest flow counter is selected. The CPU processes a request from the queue of the selected flow, and the flow counter of the selected flow is increased based on the data consumption of the processed task.
    Type: Grant
    Filed: June 23, 2015
    Date of Patent: November 1, 2016
    Assignee: Nimble Storage, Inc.
    Inventors: Gurunatha Karaje, Ajay Gulati, Umesh Maheshwari, Tomasz Barszczak, Vanco Buca
  • Patent number: 9467505
    Abstract: Maximum throughput of a storage unit, and workload and latency values of the storage unit corresponding to a predefined fraction of the maximum throughput are estimated based on workloads and latencies that are monitored on the storage unit. The computed metrics are usable in a variety of different applications including admission control, storage load balancing, and enforcing quality of service in a shared storage environment.
    Type: Grant
    Filed: August 27, 2010
    Date of Patent: October 11, 2016
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Ganesha Shanmuganathan, Irfan Ahmad
  • Patent number: 9413683
    Abstract: In an example, a method for performing initial placement of a data object in a distributed system that includes a plurality of hardware resources includes receiving a request to create an instance of a data object; determining, in response to the request, a list of hardware resources that satisfy one or more criteria of the data object; creating, in response to the request, a virtual cluster that includes a subset of the hardware resources included in the list of hardware resources; selecting a hardware resource from the virtual cluster into which the data object is to be placed; placing the data object into the hardware resource; and releasing the virtual cluster.
    Type: Grant
    Filed: April 30, 2015
    Date of Patent: August 9, 2016
    Assignee: VMware, Inc.
    Inventors: Ajay Gulati, Ganesha Shanmuganathan
  • Publication number: 20160218994
    Abstract: A system and method for providing quality of service (QoS) for clients running on host computers to access a common resource uses a resource pool module and a local scheduler in at least one of the host computers. The resource pool module operates to compute an entitlement of each client for the common resource based on a current capacity for the common resource and demands of the clients for the common resource. In addition, the resource pool module operates to assign a portion of the computed current capacity for the common resource to a particular host computer using the computed entitlement of each client running on the particular host computer. The local scheduler operates to allocate the portion of the computed current capacity among the clients running on the particular host computer.
    Type: Application
    Filed: January 25, 2016
    Publication date: July 28, 2016
    Applicant: VMware, Inc.
    Inventors: Ajay Gulati, Ganesha Shanmuganathan, Peter Joseph Varman
  • Patent number: 9363192
    Abstract: A system and method for performing automatic remediation in a distributed computer system with multiple clusters of host computers uses the same placement selection algorithm for initial placements and for remediation placements of clients. The placement selection algorithm is executed to generate a placement solution when a remediation request in response to a remediation-requiring condition in the distributed computer system for at least one client running in one of the multiple clusters of host computers is detected and a remediation placement problem for the client is constructed. The placement solution is then implemented for the client for remediation.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: June 7, 2016
    Assignee: VMware, Inc.
    Inventors: Pradeep Padala, Parth Shah, Ajay Gulati, Aastha Bhardwaj
  • Patent number: 9336041
    Abstract: Embodiments perform centralized input/output (I/O) path selection for hosts accessing storage devices in distributed resource sharing environments. The path selection accommodates loads along the paths through the fabric and at the storage devices. Topology changes may also be identified and automatically initiated. Some embodiments contemplate the hosts executing a plurality of virtual machines (VMs) accessing logical unit numbers (LUNs) in a storage area network (SAN).
    Type: Grant
    Filed: February 2, 2015
    Date of Patent: May 10, 2016
    Assignee: VMware, Inc.
    Inventors: Krishna Raj Raja, Ajay Gulati
  • Publication number: 20160092272
    Abstract: Methods, systems, and computer programs are presented for allocating CPU cycles and disk Input/Output's (IOs) to resource-creating processes based on dynamic weights that change according to the current percentage of resource utilization in the storage device. One method includes operations for assigning a first weight to a processing task that increases resource utilization of a resource for processing incoming input/output (IO) requests, and for assigning a second weight to a generating task that decreases the resource utilization of the resource. Further, the method includes an operation for dynamically adjusting the second weight based on the current resource utilization in the storage system. Additionally, the method includes an operation for allocating the CPU cycles and disk IOs to the processing task and to the generating task based on their respective first weight and second weight.
    Type: Application
    Filed: October 30, 2015
    Publication date: March 31, 2016
    Inventors: Gurunatha Karaje, Tomasz Barszczak, Vanco Buca, Ajay Gulati, Umesh Maheshwari