Patents by Inventor Sagar Trehan

Sagar Trehan 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: 10545791
    Abstract: Methods for scheduling operations in a scheduler hierarchy of a storage system. One method includes scheduling a first IO having a first cost at a first flow scheduler of a first flow configured to schedule IOs accessing a volume as executed on a first core processor. A global cost is updated with the first cost, wherein the global cost is shared by a plurality of flows of a plurality of core processors. An intervening cost is determined of at least one IO possibly scheduled before the first set of IOs by one or more flow schedulers of one or more flows configured to schedule IOs accessing the volume as executed on the plurality of core processors. A current cost is updated based on the first cost and the intervening cost. IOs and MBPS limits are set independently for the volume, each controlling scheduling through a corresponding accumulating current cost.
    Type: Grant
    Filed: January 20, 2017
    Date of Patent: January 28, 2020
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
  • Patent number: 10534542
    Abstract: Methods and systems are presented for allocating resources based on dynamic core allocation in a scheduler hierarchy of a storage system. One method includes reserving a set of core processors including one or more core processors for execution of system IOs in the data storage system. The data storage system includes a controller including non-volatile memory (NVRAM) for handling IOs and a first central processing unit (CPU) having a plurality of core processors, a solid state memory (SSD) configured as a read cache memory, and permanent data storage. The method includes dynamically adjusting the number of core processors in the set based on a current utilization of a resource. The method includes scheduling an IO on a first core processor of the plurality of core processors that has the least magnitude of scheduled utilization.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: January 14, 2020
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Sagar Trehan, Gurunatha Karaje, Zhaosheng Zhu
  • Patent number: 10423447
    Abstract: Methods for scheduling operations in a scheduler hierarchy of a storage system. One method includes scheduling a first IO having a first cost at a first flow scheduler of a first flow configured to schedule IOs accessing a volume as executed on a first core processor. A global cost is updated with the first cost, wherein the global cost is shared by a plurality of flows of a plurality of core processors. An intervening cost is determined of at least one IO possibly scheduled before the first set of IOs by one or more flow schedulers of one or more flows configured to schedule IOs accessing the volume as executed on the plurality of core processors. A current cost is updated based on the first cost and the intervening cost. IOs and MBPS limits are set independently for the volume, each controlling scheduling through a corresponding accumulating current cost.
    Type: Grant
    Filed: January 20, 2017
    Date of Patent: September 24, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
  • Patent number: 10387051
    Abstract: Examples include acquisition of IOPS limits and MBPS limits independently at a parent scheduler in a scheduler hierarchy of a storage system, wherein the scheduler hierarchy includes a parent level and a child level below the parent level. Examples include setting IOPS limits and MBPS limits independently at each child scheduler placed within the child level of the scheduler hierarchy. Examples include receiving a CPU resource allocation at the parent scheduler, wherein the CPU resource allocation is convertible to an IOPS allocation at the parent scheduler. Example include distributing the IOPS allocation among the child schedulers below the parent scheduler such that each of the child schedulers receive the same distribution of the IOPS allocation. Example include allocating IOPS between the child schedulers based on their corresponding IOPS limits.
    Type: Grant
    Filed: August 24, 2017
    Date of Patent: August 20, 2019
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
  • Publication number: 20190065078
    Abstract: Examples include acquisition of IOPS limits and MBPS limits independently at a parent scheduler in a scheduler hierarchy of a storage system, wherein the scheduler hierarchy includes a parent level and a child level below the parent level. Examples include setting IOPS limits and MBPS limits independently at each child scheduler placed within the child level of the scheduler hierarchy. Examples include receiving a CPU resource allocation at the parent scheduler, wherein the CPU resource allocation is convertible to an IOPS allocation at the parent scheduler. Example include distributing the IOPS allocation among the child schedulers below the parent scheduler such that each of the child schedulers receive the same distribution of the IOPS allocation. Example include allocating IOPS between the child schedulers based on their corresponding IOPS limits.
    Type: Application
    Filed: August 24, 2017
    Publication date: February 28, 2019
    Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
  • Publication number: 20170177221
    Abstract: Methods and systems are presented for allocating resources based on dynamic core allocation in a scheduler hierarchy of a storage system. One method includes reserving a set of core processors including one or more core processors for execution of system IOs in the data storage system. The data storage system includes a controller including non-volatile memory (NVRAM) for handling IOs and a first central processing unit (CPU) having a plurality of core processors, a solid state memory (SSD) configured as a read cache memory, and permanent data storage. The method includes dynamically adjusting the number of core processors in the set based on a current utilization of a resource. The method includes scheduling an IO on a first core processor of the plurality of core processors that has the least magnitude of scheduled utilization.
    Type: Application
    Filed: February 28, 2017
    Publication date: June 22, 2017
    Inventors: Sagar Trehan, Gurunatha Karaje, Zhaosheng Zhu
  • Publication number: 20170132040
    Abstract: Methods for scheduling operations in a scheduler hierarchy of a storage system. One method includes scheduling a first IO having a first cost at a first flow scheduler of a first flow configured to schedule IOs accessing a volume as executed on a first core processor. A global cost is updated with the first cost, wherein the global cost is shared by a plurality of flows of a plurality of core processors. An intervening cost is determined of at least one IO possibly scheduled before the first set of IOs by one or more flow schedulers of one or more flows configured to schedule IOs accessing the volume as executed on the plurality of core processors. A current cost is updated based on the first cost and the intervening cost. IOs and MBPS limits are set independently for the volume, each controlling scheduling through a corresponding accumulating current cost.
    Type: Application
    Filed: January 20, 2017
    Publication date: May 11, 2017
    Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan