Patents by Inventor Gurunatha Karaje
Gurunatha Karaje 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: 11632304Abstract: An assessment of computing system performance may include evaluating, within a time window, the average latency of operations of a certain type and size with respect to a peer performance model constructed for operations of the same type and size. Such evaluation may result in the determination of a peer performance score. The peer performance score may be used to label performance characteristics of the computing system that are measured within the same time window. A library of such performance characteristics labeled with respective peer performance scores may be constructed by examining multiple computing systems, and such library may be used to construct one or more symptom models. Each symptom model may map a performance characteristic to a symptom severity score, which indicates the severity of a symptom of the computing system.Type: GrantFiled: October 31, 2016Date of Patent: April 18, 2023Assignee: Hewlett Packard Enterprise Development LPInventors: Guoli Sun, David Nellinger Adamson, Gurunatha Karaje, Vladimir Semitchev
-
Publication number: 20220255993Abstract: A technique includes causing an agent device to setup a replication partnership between a first storage node and a second storage. Causing the agent device to setup the replication partnership includes configuring a proxy server that is associated with the second storage node to establish a secure communication channel for the replication partnership over a public network. Configuring the proxy server includes storing in the proxy server credentials for authenticating the first storage node to use the secure communication channel; and establishing port translations to be used in the secure communication channel in communicating replication data between the first storage node and the second storage node. Causing the agent device to setup the replication partnership may also include communicating replication partnership information to the second node.Type: ApplicationFiled: January 21, 2022Publication date: August 11, 2022Inventors: Gurunatha Karaje, Tomasz Barszczak, Kevin Kauffman, Nguyen Truong, Cristian Medina Abkarian, Michael E. Root, Liam McArdle, Zaid Bin Tariq
-
Patent number: 11233850Abstract: A technique includes causing an agent device to setup a replication partnership between a first storage node and a second storage. Causing the agent device to setup the replication partnership includes configuring a proxy server that is associated with the second storage node to establish a secure communication channel for the replication partnership over a public network. Configuring the proxy server includes storing in the proxy server credentials for authenticating the first storage node to use the secure communication channel; and establishing port translations to be used in the secure communication channel in communicating replication data between the first storage node and the second storage node. Causing the agent device to setup the replication partnership may also include communicating replication partnership information to the second node.Type: GrantFiled: April 17, 2018Date of Patent: January 25, 2022Assignee: Hewlett Packard Enterprise Development LPInventors: Gurunatha Karaje, Tomasz Barszczak, Kevin Kauffman, Nguyen Truong, Cristian Medina Abkarian, Michael E. Root, Liam McArdle, Zaid Bin Tariq
-
Patent number: 10768823Abstract: Methods, systems, and programs are presented for controlling the flow of data into a device in the presence of writes that are unaligned along boundaries associated with a block size. One method includes operations for identifying admission data rates for volumes, and for tracking a utilization rate of a memory that stores data of incoming writes. The method determines if incoming writes include unaligned data. When the memory utilization rate is above a first threshold, a first flow control is applied that includes a reduction of admission rates of volumes having unaligned writes while maintaining admission rates of volumes without unaligned writes. When the utilization rate is above a second threshold that is greater than the first threshold, a second flow control is applied in addition to the first flow control. The second flow control includes a reduction of a system admission rate for all incoming writes.Type: GrantFiled: April 12, 2016Date of Patent: September 8, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Gurunatha Karaje, Mandar Samant, Sourabh Yerfule, Zhaosheng Zhu, Vanco Buca
-
Patent number: 10769172Abstract: Examples include globalized object names in a global namespace. Some examples may relate to creation of an object with a globalized object name in a global namespace based on a determination. The determination may relate to a global namespace name pattern or the determination may be based on globalization information.Type: GrantFiled: March 28, 2018Date of Patent: September 8, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Nguyen Truong, Kevin Kauffman, Gurunatha Karaje
-
Patent number: 10545791Abstract: 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: GrantFiled: January 20, 2017Date of Patent: January 28, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
-
Patent number: 10534542Abstract: 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: GrantFiled: February 28, 2017Date of Patent: January 14, 2020Assignee: Hewlett Packard Enterprise Development LPInventors: Sagar Trehan, Gurunatha Karaje, Zhaosheng Zhu
-
Patent number: 10467246Abstract: Methods, systems, and programs are presented for replicating data across scale-out storage systems. One method includes replicating, from an upstream to a downstream system, a volume snapshot having one or more bins. Locations for the bins of the snapshot are identified, the location for each bin including the upstream array storing the bin and the downstream array storing a replicated version of the bin. Each bin is validated by comparing an upstream bin checksum of the bin with a downstream bin checksum of the replicated version of the bin. When the checksums are different, a plurality of chunks are defined in the bin, and for each chunk in the bin an upstream chunk checksum calculated by the upstream array is compared with a downstream chunk checksum calculated by the downstream array. The chunk is sent from the upstream to the downstream array when the chunk checksums are different.Type: GrantFiled: November 24, 2015Date of Patent: November 5, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Nimesh Bhagat, Tomasz Barszczak, Gurunatha Karaje
-
Publication number: 20190320018Abstract: A technique includes causing an agent device to setup a replication partnership between a first storage node and a second storage. Causing the agent device to setup the replication partnership includes configuring a proxy server that is associated with the second storage node to establish a secure communication channel for the replication partnership over a public network. Configuring the proxy server includes storing in the proxy server credentials for authenticating the first storage node to use the secure communication channel; and establishing port translations to be used in the secure communication channel in communicating replication data between the first storage node and the second storage node. Causing the agent device to setup the replication partnership may also include communicating replication partnership information to the second node.Type: ApplicationFiled: April 17, 2018Publication date: October 17, 2019Inventors: Gurunatha Karaje, Tomasz Barszczak, Kevin Kauffman, Nguyen Truong, Cristian Medina Abkarian, Michael E. Root, Liam McArdle, Zaid Bin Tariq
-
Publication number: 20190303489Abstract: Examples include globalized object names in a global namespace. Some examples may relate to creation of an object with a globalized object name in a global namespace based on a determination. The determination may relate to a global namespace name pattern or the determination may be based on globalization information.Type: ApplicationFiled: March 28, 2018Publication date: October 3, 2019Inventors: Nguyen Truong, Kevin Kauffman, Gurunatha Karaje
-
Patent number: 10423447Abstract: 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: GrantFiled: January 20, 2017Date of Patent: September 24, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
-
Patent number: 10394606Abstract: Methods and systems are presented for allocating resources based on dynamic weight accumulation performed in a bottom-up fashion in a scheduler hierarchy of a storage system. One method includes assigning weights to leaf schedulers at a bottom level of schedulers in a scheduler hierarchy comprising a plurality of levels of schedulers. Between two levels, each parent scheduler is associated with a unique plurality of children schedulers. For each leaf scheduler that is active, the method includes propagating a corresponding weight of a corresponding leaf scheduler to every higher level in the scheduler hierarchy, such that a corresponding scheduler at a corresponding level is associated with an accumulation of weights of its descendent schedulers. The method includes distributing resources assigned to the scheduler hierarchy based on accumulated weights at each level, such that the corresponding scheduler is proportioned resources based on the accumulation of weights of its descendent schedulers.Type: GrantFiled: September 20, 2016Date of Patent: August 27, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Sourabh Yerfule, Mandar Samant, Gurunatha Karaje
-
Patent number: 10387202Abstract: 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: GrantFiled: September 27, 2016Date of Patent: August 20, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Gurunatha Karaje, Ajay Gulati, Umesh Maheshwari, Tomasz Barszczak, Vanco Buca
-
Patent number: 10387051Abstract: 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: GrantFiled: August 24, 2017Date of Patent: August 20, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
-
Publication number: 20190065078Abstract: 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: ApplicationFiled: August 24, 2017Publication date: February 28, 2019Inventors: Sourabh Yerfule, Gurunatha Karaje, Mandar Samant, Sagar Trehan
-
Patent number: 10185592Abstract: 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: GrantFiled: March 20, 2017Date of Patent: January 22, 2019Assignee: Hewlett Packard Enterprise Development LPInventors: Gurunatha Karaje, Tomasz Barszczak, Vanco Buca, Ajay Gulati, Umesh Maheshwari
-
Patent number: 10027984Abstract: When data blocks of a data seglet are compressed using a shared dictionary and when the requested data block (or blocks) do not include the last data block of the data seglet, an optimization in the read path may involve decompressing a certain portion of the data seglet from a starting position of the data seglet to a decompression endpoint of the data seglet, but not including the portion of the data seglet following the decompression endpoint. Such technique may involve the storing of a mapping that maps, for each data block within the data seglet, an identifier of the data block to a decompression endpoint that indicates a portion of the data seglet that includes the data block.Type: GrantFiled: May 9, 2017Date of Patent: July 17, 2018Assignee: Hewlett Packard Enterprise Development LPInventors: Gurunatha Karaje, Hy Vu, Rajat Sharma, Senthil Kumar Ramamoorthy, Srikant Varadan
-
Publication number: 20180152733Abstract: When data blocks of a data seglet are compressed using a shared dictionary and when the requested data block (or blocks) do not include the last data block of the data seglet, an optimization in the read path may involve decompressing a certain portion of the data seglet from a starting position of the data seglet to a decompression endpoint of the data seglet, but not including the portion of the data seglet following the decompression endpoint. Such technique may involve the storing of a mapping that maps, for each data block within the data seglet, an identifier of the data block to a decompression endpoint that indicates a portion of the data seglet that includes the data block.Type: ApplicationFiled: May 9, 2017Publication date: May 31, 2018Inventors: Gurunatha Karaje, Hy Vu, Rajat Sharma, Senthil Kumar Ramamoorthy, Srikant Varadan
-
Publication number: 20180123931Abstract: An assessment of computing system performance may include evaluating, within a time window, the average latency of operations of a certain type and size with respect to a peer performance model constructed for operations of the same type and size. Such evaluation may result in the determination of a peer performance score. The peer performance score may be used to label performance characteristics of the computing system that are measured within the same time window. A library of such performance characteristics labeled with respective peer performance scores may be constructed by examining multiple computing systems, and such library may be used to construct one or more symptom models. Each symptom model may map a performance characteristic to a symptom severity score, which indicates the severity of a symptom of the computing system.Type: ApplicationFiled: October 31, 2016Publication date: May 3, 2018Inventors: Guoli Sun, David Nellinger Adamson, Gurunatha Karaje, Vladimir Semitchev
-
Publication number: 20170293426Abstract: Methods, systems, and programs are presented for controlling the flow of data into a device in the presence of writes that are unaligned along boundaries associated with a block size. One method includes operations for identifying admission data rates for volumes, and for tracking a utilization rate of a memory that stores data of incoming writes. The method determines if incoming writes include unaligned data. When the memory utilization rate is above a first threshold, a first flow control is applied that includes a reduction of admission rates of volumes having unaligned writes while maintaining admission rates of volumes without unaligned writes. When the utilization rate is above a second threshold that is greater than the first threshold, a second flow control is applied in addition to the first flow control. The second flow control includes a reduction of a system admission rate for all incoming writes.Type: ApplicationFiled: April 12, 2016Publication date: October 12, 2017Inventors: Gurunatha Karaje, Mandar Samant, Sourabh Yerfule, Zhaosheng Zhu, Vanco Buca