Patents by Inventor Lokesh M. Gupta

Lokesh M. Gupta 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: 10754895
    Abstract: A method for reducing I/O performance impacts associated with a data commit operation is disclosed. In one embodiment, such a method includes periodically performing a data commit operation wherein modified data is destaged from cache to persistent storage drives. Upon performing a particular instance of the data commit operation, the method determines whether modified data in the cache is a metadata track. In the event the modified data is a metadata track, the method attempts to acquire an exclusive lock on the metadata track. In the event the exclusive lock cannot be acquired, the method skips over the metadata track without destaging the metadata track for the particular instance of the data commit operation. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: October 17, 2018
    Date of Patent: August 25, 2020
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Edward Lin, Kyler A. Anderson, Matthew G. Borlick, Kevin J. Ash
  • Patent number: 10747596
    Abstract: Provided are a computer program product, system, and method for determining when to send message to a computing node to process items using a machine learning module. A send message threshold indicates a send message parameter value for a send message parameter indicating when to send a message to the computing node with at least one requested item to process. Information related to sending of messages to the computing node to process requested items is provided to a machine learning module to produce a new send message parameter value for the send message parameter indicating when to send the message, which is set to the send message parameter value. A message is sent to the computing node to process at least one item in response to the current value satisfying the condition with respect to the send message parameter value.
    Type: Grant
    Filed: July 31, 2018
    Date of Patent: August 18, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lokesh M. Gupta, Kevin J. Ash, Matthew G. Borlick, Kyler A. Anderson
  • Publication number: 20200257539
    Abstract: Provided are a computer program product, system, and method for determining feature settings for code to deploy to a system by training a machine learning module. A determination is made of an outcome of running system code on a system having configuration settings and feature settings of features in the system to enable or disable in response to the outcome. A machine learning module is trained to produce the feature settings indicating to enable or disable the features in response to input comprising the configuration settings of the system.
    Type: Application
    Filed: February 7, 2019
    Publication date: August 13, 2020
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Matthew R. Craig, Micah Robison
  • Publication number: 20200257466
    Abstract: Provided are techniques for selecting a disconnect from different types of channel disconnects using a machine learning module. An Input/Output (I/O) operation is received from a host via a channel. Inputs are provided to a machine learning module. An output is received from the machine learning module. Based on the output, one of no disconnect from the channel, a logical disconnect from the channel, or a physical disconnect from the channel is selected.
    Type: Application
    Filed: February 7, 2019
    Publication date: August 13, 2020
    Inventors: Beth A. PETERSON, Lokesh M. GUPTA, Matthew R. CRAIG, Kevin J. ASH
  • Publication number: 20200257967
    Abstract: Provided are techniques for selecting a disconnect by training a machine learning module. A machine learning module is provided that receives inputs and produces an output. The output produced from the machine learning module based on the inputs for the first I/O operation and an estimated amount of time to acquire resources for a first I/O operation is determined. An actual amount of time to acquire resources for the first I/O operation is determined. The machine learning module is retrained based on the inputs, the output, and the actual amount of time it took to acquire resources for the first I/O operation versus an estimated amount of time to acquire the resources for the first I/O operation. The retrained machine learning module is used to select one of disconnect from a channel, the logical disconnect from the channel, or the physical disconnect from the channel for a second I/O operation.
    Type: Application
    Filed: February 7, 2019
    Publication date: August 13, 2020
    Inventors: Beth A. PETERSON, Lokesh M. GUPTA, Matthew R. CRAIG, Kevin J. ASH
  • Patent number: 10740007
    Abstract: In one aspect of the present description, a primary-secondary role swap operation which swaps roles of primary and secondary data storage systems in a distributed data storage system, is synchronized with safe data commit scan operations of individual data storage systems. The safe data commit scan operations of the individual data storage systems are also synchronized to ensure completion of the safe data commit scans and to reduce the occurrence of reductions in input/output (I/O) response times prior to initiation of a primary-secondary role swap operation. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: March 6, 2018
    Date of Patent: August 11, 2020
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Roger G. Hathorn, Gregory E. McBride
  • Patent number: 10732884
    Abstract: A computer-implemented method for implementing a RAID array, according to one approach, includes: predicting a compression ratio of data to be stored in the RAID array, and using the predicted compression ratio and a physical storage capacity of the RAID array to calculate a maximum virtual storage capacity of the RAID array. The maximum virtual storage capacity is used to establish an effective storage capacity of the RAID array. One or more instructions to store compressed data in the RAID array are also sent. In response to occurrence of a predetermined event, a current compression ratio of the compressed data stored in the RAID array and the physical storage capacity of the RAID array are used to calculate a current virtual storage capacity of the RAID array. Furthermore, the effective storage capacity of the RAID array is scaled based on the current virtual storage capacity.
    Type: Grant
    Filed: March 28, 2019
    Date of Patent: August 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen, Brian A. Rinaldi, Matthew G. Borlick, Matthew J. Kalos
  • Patent number: 10735510
    Abstract: A storage and application controller that is coupled to a plurality of storage and application execution clouds is maintained. The storage and application controller transmits, via a first communications protocol, an application to a first storage and application execution cloud. The storage and application controller transmits, via a second communications protocol, a copy of the application to a second storage and application execution cloud. In response to a compromise of the first communications protocol, execution of the application is stopped and replaced via execution of the copy of the application.
    Type: Grant
    Filed: July 20, 2018
    Date of Patent: August 4, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Roger G. Hathorn, Karl A. Nielsen
  • Publication number: 20200241762
    Abstract: A method for increasing effective storage capacity in a heterogeneous storage array is disclosed. In one embodiment, such a method determines a number of smaller-capacity storage drives and a number of larger-capacity storage drives in a storage array. The method further determines which RAID arrays in the storage array may be composed exclusively of the larger-capacity storage drives. Using this information, the method establishes a first set of RAID arrays in the storage array that will be composed exclusively of the larger-capacity storage drives and a second set of RAID arrays that may contain the smaller-capacity storage drives. The method then initiates a process to swap the smaller-capacity storage drives in the first set with the larger-capacity storage drives in the second set until the first set of RAID arrays is composed exclusively of the larger-capacity storage drives. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: January 29, 2019
    Publication date: July 30, 2020
    Applicant: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Karl A. Nielsen, Matthew G. Borlick, Kevin J. Ash
  • Publication number: 20200241753
    Abstract: A computer-implemented method, according to one embodiment, includes: in response to experiencing a loss of data at a first track of a source volume, determining whether a copy of the lost data has been stored at a second track of a target volume. Moreover, in response to determining that a copy of the lost data has been stored at a second track of the target volume, determine whether the copy of the lost data has been altered since being stored at the second track of the target volume. In response to determining that the copy of the lost data has not been altered since being stored at the second track of the target volume, a request for the copy of the lost data is sent to the target volume. In response, the copy of the lost data is received, and used to recover the lost data.
    Type: Application
    Filed: January 25, 2019
    Publication date: July 30, 2020
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Kevin J. Ash, Kyler A. Anderson
  • Patent number: 10725776
    Abstract: Provided are a computer program product, system, and method for reducing a rate at which requests are sent from one processor to another to reduce processor utilization at the processor receiving the requests. A determination is made as to whether processor utilization at the first processor exceeds a utilization threshold. If so, a determination is made as to whether a specified operation is in progress in response to determining that the processor utilization at the first processor exceeds the utilization threshold. The first processor sends a message to the second processor to cause the second processor to reduce a rate at which requests are transferred from the second processor to the first processor in response to determining that the specified operations is in progress.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: July 28, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clint A. Hardy, Matthew G. Borlick, Adrian C. Gerhard, Lokesh M. Gupta
  • Publication number: 20200234159
    Abstract: Provided are a computer program product, system, and method for determining whether to process a host request by training a machine learning module. A machine learning module receives input information related to at least one of running tasks, mail queue messages related to host request processing, I/O request processing, and a host request received from a host system and produces output for the host request indicating whether to process the host request. A determination is made of output produced from the machine learning module based on the input information for a received host request. A determination is made of an expected output based on a measured system resource usage and an optimum system resource usage. The machine learning module is retrained with the input information, the output produced from the machine learning module, and the expected output and provided to determine whether to process a received host request.
    Type: Application
    Filed: January 23, 2019
    Publication date: July 23, 2020
    Inventors: Matthew R. Craig, Beth A. Peterson, Lokesh M. Gupta, Kevin J. Ash
  • Publication number: 20200233716
    Abstract: Provided are a computer program product, system, and method for determining whether to process a host request using a machine learning module. Information that relates to at least one of running tasks, mail queue messages related to host requests, Input/Output (I/O) request processing, and a host request received from the host system is provided to a machine learning module. An output representing a processing load in a system is received from the machine learning module. The output is used to determine whether to process the host request.
    Type: Application
    Filed: January 23, 2019
    Publication date: July 23, 2020
    Inventors: Matthew R. Craig, Beth A. Peterson, Lokesh M. Gupta, Kevin J. Ash
  • Publication number: 20200226041
    Abstract: Provided are a computer program product, system, and method for using a track format code in a cache control block for a track in a cache to process read and write requests to the track in the cache. A track format table associates track format codes with track format metadata. A determination is made as to whether the track format table has track format metadata matching track format metadata of a track staged into the cache. A determination is made as to whether a track format code from the track format table for the track format metadata in the track format table matches the track format metadata of the track staged. A cache control block for the track being added to the cache is generated including the determined track format code when the track format table has the matching track format metadata.
    Type: Application
    Filed: March 31, 2020
    Publication date: July 16, 2020
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos, Beth A. Peterson
  • Patent number: 10691596
    Abstract: A storage tier management application indicates a heat index for each extent of a plurality of extents, wherein a higher heat index indicates a greater frequency of usage of tracks of an extent than a lower heat index. A least recently used (LRU) list for cache management is configured to perform demotion of tracks of a lower heat index prior to demotion of tracks of a higher heat index.
    Type: Grant
    Filed: April 27, 2018
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lokesh M. Gupta, Matthew G. Borlick, Kyle A. Anderson, Kevin J. Ash
  • Patent number: 10691353
    Abstract: A storage controller receives a plurality of synchronous writes from a host via a bus interface, wherein each of the synchronous writes is received for writing to a first node and a second node of the storage controller. For each record of a track written to the first node and the second node, an error detecting code is computed on writing the record. In response to determining that computed error detecting codes do not match for any corresponding records of the track in the first node and the second node, an indication of an error is transmitted from the storage controller to the host.
    Type: Grant
    Filed: November 30, 2018
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Beth A. Peterson, Kevin J. Ash, Chung M. Fung, Lokesh M. Gupta, Kyler A. Anderson
  • Patent number: 10691566
    Abstract: Provided are a computer program product, system, and method for using a track format code in a cache control block for a track in a cache to process read and write requests to the track in the cache. A track format table associates track format codes with track format metadata. A determination is made as to whether the track format table has track format metadata matching track format metadata of a track staged into the cache. A determination is made as to whether a track format code from the track format table for the track format metadata in the track format table matches the track format metadata of the track staged. A cache control block for the track being added to the cache is generated including the determined track format code when the track format table has the matching track format metadata.
    Type: Grant
    Filed: July 27, 2017
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Kyler A. Anderson, Kevin J. Ash, Lokesh M. Gupta, Matthew J. Kalos, Beth A. Peterson
  • Patent number: 10691609
    Abstract: A method for concurrently erasing data on a processor and preparing the processor for removal from a computing system is disclosed. In one embodiment, such a method includes determining tasks queued to be executed on a processor and reassigning the tasks to a different processor, such as to a different processor in the same cluster as the processor. The method further prevents new tasks from being assigned to the processor. The method waits for currently executing tasks on the processor to complete. Once the currently executing tasks are complete, the method initiates a cache-hostile job on the processor to evict entries in cache of the processor. Once the cache-hostile job is complete, the method enables the processor to be removed from a computing system such as a storage system controller. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: July 24, 2017
    Date of Patent: June 23, 2020
    Assignee: International Business Machines Corporation
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Clint A. Hardy, Karl A. Nielsen
  • Patent number: 10691518
    Abstract: Provided are a computer program product, system, and method for managing I/O requests to a storage array of storage devices in a machine having a processor node and device adaptor. In response to initiating a rebuild of data in the storage array, the device adaptor determines whether a remaining fault tolerance at the storage array comprises a non-zero fault tolerance that permits at least one further storage device to fail and still allow recovery of data stored in the storage array. In response to determining that the remaining fault tolerance is a zero fault tolerance that does not permit at least one storage device to fail and allow recovery of data, the device adaptor sends a message to the processor node to cause the processor node to initiate an emergency protocol to terminate a mission critical operation when the processor node is performing the mission critical operation.
    Type: Grant
    Filed: July 10, 2019
    Date of Patent: June 23, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clint A. Hardy, Matthew G. Borlick, Adrian C. Gerhard, Lokesh M. Gupta
  • Publication number: 20200183914
    Abstract: Provided are a computer program product, system, and method for fixing anomalies in a preserved data structure used to generate a temporary data structure during system initialization. A preserved data structure in persistent storage is used to build a temporary data structure in a memory of the computing system during initialization of the computing system. The temporary data structure represents computational resources in the computing system and is rebuilt from the preserved data structure during the initialization. The preserved data structure and the temporary data structure are processed to determine whether the preserved data structure includes at least one anomaly that would result in rebuilding the temporary data structure with an error. Information on the preserved data structure and the temporary data structure having the anomaly are processed to determine modifications to correct the preserved data structure. The determined modifications are processed to correct the preserved data structure.
    Type: Application
    Filed: February 11, 2020
    Publication date: June 11, 2020
    Inventors: Matthew G. BORLICK, Lokesh M. GUPTA, Clint A. HARDY