Patents by Inventor Matthew R. Craig

Matthew R. Craig 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).

  • Publication number: 20240111450
    Abstract: A computer-implemented method for effectively delivering notifications in data storage environments includes, receiving, by a storage controller from a host system, a request to register the host system with the storage controller to receive notifications. These notifications may be associated with a selected type of event detected by the storage controller. In certain embodiments, the selected type of event is a space-related condition associated with a particular storage resource controlled by the storage controller. The computer-implemented method registers the host system with the storage controller. In response to detecting an event of the selected type on the storage controller, the computer-implemented method transmits a notification from the storage controller to the host system to provide notice of the event. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: October 1, 2022
    Publication date: April 4, 2024
    Applicant: International Business Machines Corporation
    Inventors: Beth Ann Peterson, Matthew Richard Craig, John G. Thompson, John R. Paveza, Nicolas Marc Clayton, Terry O'Connor, David Michael Shackelford
  • Patent number: 11461112
    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: Grant
    Filed: February 7, 2019
    Date of Patent: October 4, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta, Matthew R. Craig, Micah Robison
  • Patent number: 11341407
    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: Grant
    Filed: February 7, 2019
    Date of Patent: May 24, 2022
    Assignee: International Business Machines Corporation
    Inventors: Beth A. Peterson, Lokesh M. Gupta, Matthew R. Craig, Kevin J. Ash
  • Patent number: 11281380
    Abstract: Remote copy operations are performed to copy data from a primary storage controller to a secondary storage controller, wherein input/output (I/O) requests are received at the primary storage controller from a host both via a bus interface and a network interface while the remote copy operations are in progress, and wherein consistency groups are formed during the remote copy operations to copy the data consistently. Quiescing of I/O operations performed via the bus interface are performed while a current consistency group is being replaced by a next consistency group during the remote copy operations.
    Type: Grant
    Filed: January 10, 2020
    Date of Patent: March 22, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew J. Ward, Matthew J. Kalos, Joshua J. Crawford, Carol S. Mellgren, Matthew R. Craig
  • Patent number: 11175959
    Abstract: A machine learning module receives inputs comprising attributes of a storage controller, wherein the attributes affect allocation of a plurality of resources to a plurality of interfaces. In response to a predetermined number of I/O operations occurring in the storage controller, a generation is made via forward propagation through a plurality of layers of the machine learning module, of an output value corresponding to a number of resources to allocate to an interface. A margin of error is calculated based on comparing the generated output value to an expected output value that is generated from an indication of a predetermined function based at least on a number of I/O operations that are waiting for a resource and a number of available resources. An adjustment is made of weights of links that interconnect nodes of the plurality of layers via back propagation, to reduce the margin of error.
    Type: Grant
    Filed: May 1, 2019
    Date of Patent: November 16, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lokesh M. Gupta, Matthew R. Craig, Beth Ann Peterson, Kevin John Ash
  • Patent number: 11175958
    Abstract: A plurality of interfaces that share a plurality of resources in a storage controller are maintained. In response to an occurrence of a predetermined number of operations associated with an interface of the plurality of interfaces, an input is provided on a plurality of attributes of the storage controller to a machine learning module. In response to receiving the input, the machine learning module generates an output value corresponding to a number of resources of the plurality of resources to allocate to the interface in the storage controller.
    Type: Grant
    Filed: May 1, 2019
    Date of Patent: November 16, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Lokesh M. Gupta, Matthew R. Craig, Beth Ann Peterson, Kevin John Ash
  • Patent number: 11119687
    Abstract: One general aspect of device reservation state synchronization in accordance with the present description, device reservation management logic ensures synchronization of reservation states of primary and secondary volumes of a mirror relationship in the event of a change in the state of the mirroring relationship such as achieving full data synchronization between the volumes. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: October 11, 2019
    Date of Patent: September 14, 2021
    Assignee: International Business Machines Corporation
    Inventors: Scott B. Compton, Matthew R. Craig, Clint A. Hardy, Matthew J. Kalos, Carol S. Mellgren, John G. Thompson
  • Patent number: 11086559
    Abstract: Provided are techniques for cloud based store and restore with copy services. A store command to transfer data from one or more tracks of a volume to cloud storage is received. With track services, data for the one or more tracks in the volume is retrieved by emulating a host read. With a cloud data movement engine, the data for the one or more tracks is converted to data for one or more objects. With the cloud data movement engine, the one or more objects are stored in the cloud storage.
    Type: Grant
    Filed: September 5, 2017
    Date of Patent: August 10, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew R. Craig, Edward H. Lin, Beth A. Peterson, Qiang Xie
  • Patent number: 11055234
    Abstract: Provided are a computer program product, system, and method for managing cache segments between a global queue and a plurality of local queues by training a machine learning module. A machine learning module is provided input comprising cache segment management information related to management of segments in the local queues by the processing units and accesses of the global queue to transfer cache segments between the local queues and the global queue to output an optimum number parameter comprising an optimum number of segments to maintain in a local queue and a transfer number parameter comprising a number of cache segments to move between a local queue and the global queue. The machine learning module is retrained based on the cache segment management information to output an adjusted transfer number parameter and an adjusted optimum number parameter for the processing units.
    Type: Grant
    Filed: May 21, 2019
    Date of Patent: July 6, 2021
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Kevin J. Ash, Beth A. Peterson, Matthew R. Craig
  • Patent number: 11048641
    Abstract: Provided are a computer program product, system, and method for managing cache segments between a global queue and a plurality of local queues using a machine learning module. Cache segment management information related to management of segments in the local queues and accesses to the global queue to transfer cache segments between the local queues and the global queue, are provided to a machine learning module to output an optimum number parameter comprising an optimum number of segments to maintain in a local queue and a transfer number parameter comprising a number of cache segments to transfer between a local queue and the global queue. The optimum number parameter and the transfer number parameter are sent to a processing unit having a local queue to cause the processing unit to transfer the transfer number parameter of cache segments between the local queue to the global queue.
    Type: Grant
    Filed: May 21, 2019
    Date of Patent: June 29, 2021
    Assignee: International Business Machines Corporation
    Inventors: Lokesh M. Gupta, Kevin J. Ash, Beth A. Peterson, Matthew R. Craig
  • Patent number: 10983708
    Abstract: Provided are a computer program product, system, and method for sharing alias addresses among logical devices by a host accessing logical devices provisioned with a capacity from physical devices managed by a control unit. The host establishes with the control unit an association of logical devices and alias addresses assigned to the logical devices, wherein the alias addresses are associated with an alias management group. Alias address pool information is generated indicating each of the logical devices and their assigned alias addresses indicated in the association. The host uses from the alias address pool information any one of the alias addresses in the alias address pool information to access any of the logical devices associated with the same alias management group as the alias address.
    Type: Grant
    Filed: January 8, 2020
    Date of Patent: April 20, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Susan K. Candelaria, Scott B. Compton, Matthew R. Craig, Clint A. Hardy, Matthew J. Kalos, Dale F. Riedy, Richard A. Ripberger, Harry M. Yudenfriend
  • Patent number: 10929057
    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: Grant
    Filed: February 7, 2019
    Date of Patent: February 23, 2021
    Assignee: International Business Machines Corporation
    Inventors: Beth A. Peterson, Lokesh M. Gupta, Matthew R. Craig, Kevin J. Ash
  • Patent number: 10901793
    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: Grant
    Filed: January 23, 2019
    Date of Patent: January 26, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew R. Craig, Beth A. Peterson, Lokesh M. Gupta, Kevin J. Ash
  • Patent number: 10884872
    Abstract: One general aspect of device reservation state preservation in accordance with the present description, provides for an intermediate reservation state, referred to herein as a “peer” reservation state, which may be maintained by a storage controller in the event of a total loss of communication connectivity to the reserving host so long as a peer or partner storage controller of a mirror relationship still has communication connectivity to the host. The peer reservation state as used herein, is a reservation state intermediate between a full reservation state for a device, and a fully released state in which a reservation of the device has been completely released. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: March 26, 2019
    Date of Patent: January 5, 2021
    Assignee: International Business Machines Corporation
    Inventors: Scott B. Compton, Matthew R. Craig, Clint A. Hardy, Matthew J. Kalos, Carol S. Mellgren, John G. Thompson
  • Publication number: 20200371950
    Abstract: Provided are a computer program product, system, and method for managing cache segments between a global queue and a plurality of local queues using a machine learning module. Cache segment management information related to management of segments in the local queues and accesses to the global queue to transfer cache segments between the local queues and the global queue, are provided to a machine learning module to output an optimum number parameter comprising an optimum number of segments to maintain in a local queue and a transfer number parameter comprising a number of cache segments to transfer between a local queue and the global queue. The optimum number parameter and the transfer number parameter are sent to a processing unit having a local queue to cause the processing unit to transfer the transfer number parameter of cache segments between the local queue to the global queue.
    Type: Application
    Filed: May 21, 2019
    Publication date: November 26, 2020
    Inventors: Lokesh M. GUPTA, Kevin J. ASH, Beth A. PETERSON, Matthew R. CRAIG
  • Publication number: 20200371959
    Abstract: Provided are a computer program product, system, and method for managing cache segments between a global queue and a plurality of local queues by training a machine learning module. A machine learning module is provided input comprising cache segment management information related to management of segments in the local queues by the processing units and accesses of the global queue to transfer cache segments between the local queues and the global queue to output an optimum number parameter comprising an optimum number of segments to maintain in a local queue and a transfer number parameter comprising a number of cache segments to move between a local queue and the global queue. The machine learning module is retrained based on the cache segment management information to output an adjusted transfer number parameter and an adjusted optimum number parameter for the processing units.
    Type: Application
    Filed: May 21, 2019
    Publication date: November 26, 2020
    Inventors: Lokesh M. GUPTA, Kevin J. ASH, Beth A. PETERSON, Matthew R. CRAIG
  • Publication number: 20200348974
    Abstract: A plurality of interfaces that share a plurality of resources in a storage controller are maintained. In response to an occurrence of a predetermined number of operations associated with an interface of the plurality of interfaces, an input is provided on a plurality of attributes of the storage controller to a machine learning module. In response to receiving the input, the machine learning module generates an output value corresponding to a number of resources of the plurality of resources to allocate to the interface in the storage controller.
    Type: Application
    Filed: May 1, 2019
    Publication date: November 5, 2020
    Inventors: Lokesh M. Gupta, Matthew R. Craig, Beth Ann Peterson, Kevin John Ash
  • Publication number: 20200348975
    Abstract: A machine learning module receives inputs comprising attributes of a storage controller, wherein the attributes affect allocation of a plurality of resources to a plurality of interfaces. In response to a predetermined number of I/O operations occurring in the storage controller, a generation is made via forward propagation through a plurality of layers of the machine learning module, of an output value corresponding to a number of resources to allocate to an interface. A margin of error is calculated based on comparing the generated output value to an expected output value that is generated from an indication of a predetermined function based at least on a number of I/O operations that are waiting for a resource and a number of available resources. An adjustment is made of weights of links that interconnect nodes of the plurality of layers via back propagation, to reduce the margin of error.
    Type: Application
    Filed: May 1, 2019
    Publication date: November 5, 2020
    Inventors: Lokesh M. Gupta, Matthew R. Craig, Beth Ann Peterson, Kevin John Ash
  • 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