Patents by Inventor Ivan M. Heninger

Ivan M. Heninger 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: 10915250
    Abstract: Systems and methods for optimizing storage system performance are disclosed. A method includes: determining an expected lifetime of each of at least one computing instance; determining a disk data extent evaluation period for each of the at least one computing instance based on the determined expected lifetime; determining an input/output (I/O) wait time threshold for each of the at least one computing instance; determining an I/O wait time of each of the at least one computing instance using the determined disk data extent evaluation period; and in response to the determined I/O wait time of one or more of the at least one computing instance exceeding the determined I/O wait time threshold of the computing instance, moving at least one data extent associated with the one or more computing instance exceeding the determined I/O wait time threshold from hard disk drive storage to solid state drive storage.
    Type: Grant
    Filed: July 12, 2019
    Date of Patent: February 9, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Publication number: 20190332280
    Abstract: Systems and methods for optimizing storage system performance are disclosed. A method includes: determining an expected lifetime of each of at least one computing instance; determining a disk data extent evaluation period for each of the at least one computing instance based on the determined expected lifetime; determining an input/output (I/O) wait time threshold for each of the at least one computing instance; determining an I/O wait time of each of the at least one computing instance using the determined disk data extent evaluation period; and in response to the determined I/O wait time of one or more of the at least one computing instance exceeding the determined I/O wait time threshold of the computing instance, moving at least one data extent associated with the one or more computing instance exceeding the determined I/O wait time threshold from hard disk drive storage to solid state drive storage.
    Type: Application
    Filed: July 12, 2019
    Publication date: October 31, 2019
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Patent number: 10394461
    Abstract: Systems and methods for optimizing storage system performance are disclosed. A method includes: determining an expected lifetime of each of at least one computing instance; determining a disk data extent evaluation period for each of the at least one computing instance based on the determined expected lifetime; determining an input/output (I/O) wait time threshold for each of the at least one computing instance; determining an I/O wait time of each of the at least one computing instance using the determined disk data extent evaluation period; and in response to the determined I/O wait time of one or more of the at least one computing instance exceeding the determined I/O wait time threshold of the computing instance, moving at least one data extent associated with the one or more computing instance exceeding the determined I/O wait time threshold from hard disk drive storage to solid state drive storage.
    Type: Grant
    Filed: September 5, 2018
    Date of Patent: August 27, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Publication number: 20190004711
    Abstract: Systems and methods for optimizing storage system performance are disclosed. A method includes: determining an expected lifetime of each of at least one computing instance; determining a disk data extent evaluation period for each of the at least one computing instance based on the determined expected lifetime; determining an input/output (I/O) wait time threshold for each of the at least one computing instance; determining an I/O wait time of each of the at least one computing instance using the determined disk data extent evaluation period; and in response to the determined I/O wait time of one or more of the at least one computing instance exceeding the determined I/O wait time threshold of the computing instance, moving at least one data extent associated with the one or more computing instance exceeding the determined I/O wait time threshold from hard disk drive storage to solid state drive storage.
    Type: Application
    Filed: September 5, 2018
    Publication date: January 3, 2019
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Patent number: 10101922
    Abstract: Systems and methods for optimizing storage system performance are disclosed. A method includes: determining an expected lifetime of each of at least one computing instance; determining a disk data extent evaluation period for each of the at least one computing instance based on the determined expected lifetime; determining an input/output (I/O) wait time threshold for each of the at least one computing instance; determining an I/O wait time of each of the at least one computing instance using the determined disk data extent evaluation period; and in response to the determined I/O wait time of one or more of the at least one computing instance exceeding the determined I/O wait time threshold of the computing instance, moving at least one data extent associated with the one or more computing instance exceeding the determined I/O wait time threshold from hard disk drive storage to solid state drive storage.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: October 16, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Patent number: 9720784
    Abstract: A technique for cloud infrastructure backup in a virtualized environment utilizing shared storage includes obtaining a workload input/output (I/O) profile to the shared storage over a time period. An attempt to locate one or more time windows in the workload I/O profile for which a cloud infrastructure backup can be staged is initiated. In response to determining the cloud infrastructure backup can be staged during at least one of the time windows, staging of the cloud infrastructure backup is scheduled during a selected one of the time windows. In response to determining the cloud infrastructure backup cannot be staged during at least one of the time windows, an interference tolerance approach is employed for accessing the shared storage for active workloads and the cloud infrastructure backup during the staging of the cloud infrastructure backup.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: August 1, 2017
    Assignee: International Business Machines Corporation
    Inventors: Edward Raymond Bernal, Rahul Ghosh, Ivan M. Heninger, Douglas Alan Larson, Aaron James Quirk
  • Patent number: 9690669
    Abstract: A technique for cloud infrastructure backup in a virtualized environment utilizing shared storage includes obtaining a workload input/output (I/O) profile to the shared storage over a time period. An attempt to locate one or more time windows in the workload I/O profile for which a cloud infrastructure backup can be staged is initiated. In response to determining the cloud infrastructure backup can be staged during at least one of the time windows, staging of the cloud infrastructure backup is scheduled during a selected one of the time windows. In response to determining the cloud infrastructure backup cannot be staged during at least one of the time windows, an interference tolerance approach is employed for accessing the shared storage for active workloads and the cloud infrastructure backup during the staging of the cloud infrastructure backup.
    Type: Grant
    Filed: June 16, 2014
    Date of Patent: June 27, 2017
    Assignee: Internaitonal Business Machines Corporation
    Inventors: Edward Raymond Bernal, Rahul Ghosh, Ivan M. Heninger, Douglas Alan Larson, Aaron James Quirk
  • Patent number: 9571374
    Abstract: A method, system and computer program product for allocating compute nodes among cloud groups. Policies are created for cloud groups for specifying conditions when a compute node will need to be borrowed by a cloud group as well as when the borrowed compute node is to be returned. Furthermore, priorities are assigned to the conditions in the policies for borrowing a compute node as well as to the cloud groups concerning borrowing compute nodes. A compute node is allocated temporarily from a first cloud group to a second cloud group based on the priority assigned to the second cloud group and the priority assigned to the monitored condition invoking the borrowing of the compute node as well as based on the monitored condition satisfying a condition in the policy for the second cloud group as to when the compute node will need to be borrowed by the second cloud group.
    Type: Grant
    Filed: January 12, 2015
    Date of Patent: February 14, 2017
    Assignee: International Business Machines Corporation
    Inventors: Rohith K. Ashok, Roy F. Brabson, Ivan M. Heninger, Hugh E. Hockett, Bret R. Olszewski, Aaron J. Quirk
  • Publication number: 20160204923
    Abstract: A method, system and computer program product for allocating compute nodes among cloud groups. Policies are created for cloud groups for specifying conditions when a compute node will need to be borrowed by a cloud group as well as when the borrowed compute node is to be returned. Furthermore, priorities are assigned to the conditions in the policies for borrowing a compute node as well as to the cloud groups concerning borrowing compute nodes. A compute node is allocated temporarily from a first cloud group to a second cloud group based on the priority assigned to the second cloud group and the priority assigned to the monitored condition invoking the borrowing of the compute node as well as based on the monitored condition satisfying a condition in the policy for the second cloud group as to when the compute node will need to be borrowed by the second cloud group.
    Type: Application
    Filed: January 12, 2015
    Publication date: July 14, 2016
    Inventors: Rohith K. Ashok, Roy F. Brabson, Ivan M. Heninger, Hugh E. Hockett, Bret R. Olszewski, Aaron J. Quirk
  • Patent number: 9311132
    Abstract: A method, system and computer program product for efficiently utilizing a virtual file system cache across cloud computing nodes. A determination is made as to which hypervisors will be able to share all or a portion of the memory in its cache module (look-aside cache) to become a hypervisor in a “pool of hypervisors” based on the workload of the virtual machines run by the hypervisor. All or a portion of the memory in the cache module in each hypervisor in the pool of hypervisors that is available to be utilized by other virtual machines is allocated to form a “shared cache module” to be utilized by virtual machines run by the pool of hypervisors. In this manner, the look-aside cache available to the hypervisor will be utilized more effectively since any available memory can be utilized by other virtual machines running on different hypervisors on different cloud computing nodes.
    Type: Grant
    Filed: September 26, 2014
    Date of Patent: April 12, 2016
    Assignee: International Business Machines Corporation
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Publication number: 20160092255
    Abstract: A method, system and computer program product for efficiently utilizing a virtual file system cache across cloud computing nodes. A determination is made as to which hypervisors will be able to share all or a portion of the memory in its cache module (look-aside cache) to become a hypervisor in a “pool of hypervisors” based on the workload of the virtual machines run by the hypervisor. All or a portion of the memory in the cache module in each hypervisor in the pool of hypervisors that is available to be utilized by other virtual machines is allocated to form a “shared cache module” to be utilized by virtual machines run by the pool of hypervisors. In this manner, the look-aside cache available to the hypervisor will be utilized more effectively since any available memory can be utilized by other virtual machines running on different hypervisors on different cloud computing nodes.
    Type: Application
    Filed: September 26, 2014
    Publication date: March 31, 2016
    Inventors: Edward R. Bernal, Ivan M. Heninger
  • Patent number: 9286104
    Abstract: A method, system and computer program product for selecting virtual machines to be migrated. The page consumption is monitored and recorded for each virtual machine running on a physical machine in a cloud computing node. Those virtual machines with a positive gradient of page consumption that is less than a threshold are placed in a list of virtual machines to be ranked. The virtual machines in the list are ranked based on an increasing order of the relative page consumption value at each sample interval within an observation window of time. A final rank for each virtual machine in the list is computed based on averaging its ranking across each sample interval within the observation window of time. One or more virtual machines are then selected to be migrated to another physical machine that have the lowest final ranking (i.e., with the lowest relative page consumption values).
    Type: Grant
    Filed: January 5, 2015
    Date of Patent: March 15, 2016
    Assignee: International Business Machines Corporation
    Inventors: Rahul Ghosh, Ivan M. Heninger, Saju Mathew, Aaron J. Quirk
  • Publication number: 20150365478
    Abstract: A technique for cloud infrastructure backup in a virtualized environment utilizing shared storage includes obtaining a workload input/output (I/O) profile to the shared storage over a time period. An attempt to locate one or more time windows in the workload I/O profile for which a cloud infrastructure backup can be staged is initiated. In response to determining the cloud infrastructure backup can be staged during at least one of the time windows, staging of the cloud infrastructure backup is scheduled during a selected one of the time windows. In response to determining the cloud infrastructure backup cannot be staged during at least one of the time windows, an interference tolerance approach is employed for accessing the shared storage for active workloads and the cloud infrastructure backup during the staging of the cloud infrastructure backup.
    Type: Application
    Filed: August 26, 2015
    Publication date: December 17, 2015
    Inventors: EDWARD RAYMOND BERNAL, RAHUL GHOSH, IVAN M. HENINGER, DOUGLAS ALAN LARSON, AARON JAMES QUIRK
  • Publication number: 20150363275
    Abstract: A technique for cloud infrastructure backup in a virtualized environment utilizing shared storage includes obtaining a workload input/output (I/O) profile to the shared storage over a time period. An attempt to locate one or more time windows in the workload I/O profile for which a cloud infrastructure backup can be staged is initiated. In response to determining the cloud infrastructure backup can be staged during at least one of the time windows, staging of the cloud infrastructure backup is scheduled during a selected one of the time windows. In response to determining the cloud infrastructure backup cannot be staged during at least one of the time windows, an interference tolerance approach is employed for accessing the shared storage for active workloads and the cloud infrastructure backup during the staging of the cloud infrastructure backup.
    Type: Application
    Filed: June 16, 2014
    Publication date: December 17, 2015
    Applicant: International Business Machines Corporation
    Inventors: EDWARD RAYMOND BERNAL, RAHUL GHOSH, IVAN M. HENINGER, DOUGLAS ALAN LARSON, AARON JAMES QUICK
  • Patent number: 9201706
    Abstract: A method, system and computer program product for minimizing workload migrations during cloud maintenance operations. Upon receiving an indication that a scheduled maintenance operation is to be performed, a cloud controller uploads the maintenance binaries associated with the scheduled maintenance operation and analyzes the maintenance binaries so as to evaluate the requirements of the maintenance packages and dependencies associated with the scheduled maintenance operation. A matrix is then generated by the cloud controller to identify the classes of hardware that will be disrupted by the scheduled maintenance operation based on the analysis. The workloads running on the classes of hardware identified in the matrix will then be consolidated prior to the scheduled maintenance operation. By consolidating the workloads onto a fewer number of hardware components, a fewer number of workload migrations will need to be performed during the cloud maintenance operation.
    Type: Grant
    Filed: March 11, 2013
    Date of Patent: December 1, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk, Matthew J. Sheard
  • Patent number: 9170850
    Abstract: A method, system and computer program product for minimizing workload migrations during cloud maintenance operations. Upon receiving an indication that a scheduled maintenance operation is to be performed, a cloud controller uploads the maintenance binaries associated with the scheduled maintenance operation and analyzes the maintenance binaries so as to evaluate the requirements of the maintenance packages and dependencies associated with the scheduled maintenance operation. A matrix is then generated by the cloud controller to identify the classes of hardware that will be disrupted by the scheduled maintenance operation based on the analysis. The workloads running on the classes of hardware identified in the matrix will then be consolidated prior to the scheduled maintenance operation. By consolidating the workloads onto a fewer number of hardware components, a fewer number of workload migrations will need to be performed during the cloud maintenance operation.
    Type: Grant
    Filed: October 31, 2013
    Date of Patent: October 27, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ivan M. Heninger, Douglas A. Larson, Aaron J. Quirk, Matthew J. Sheard
  • Patent number: 9116623
    Abstract: A method, system and computer program product for optimizing storage system behavior in a cloud computing environment. An Input/Output (I/O) operation data is appended with a tag, where the tag indicates a class of data for the I/O operation data. Upon the storage controller reviewing the tag appended to the I/O operation data, the storage controller performs a table look-up for the storage policy associated with the determined class of data. The storage controller applies a map to determine a storage location for the I/O operation data in a drive device, where the map represents a logical volume which indicates a range of block data that is to be excluded for being stored on the drive device and a range of block data that is to be considered for being stored on the drive device. In this manner, granularity of storage policies is provided in a cloud computing environment.
    Type: Grant
    Filed: August 14, 2012
    Date of Patent: August 25, 2015
    Assignee: International Business Machines Corporation
    Inventors: Rohith K. Ashok, Darryl E. Gardner, Ivan M. Heninger, Douglas A. Larson, Gerald F. McBrearty, Aaron J. Quirk, Matthew J. Sheard
  • Patent number: 9088479
    Abstract: A method, system and computer program product for selecting an appropriate platform to run an application deployed in a cloud computing environment. The appropriate platform is selected by employing a two phase process, where the first phase occurs prior to the deployment of the application and the second phase occurs after the application has been deployed. In the first phase, the cloud computing node selects a platform using various factors, such as application binaries, application metadata and artifacts, and qualities of service and application requirements. In the second phase, the cloud computing node determines whether an alternative platform needs to be implemented for subsequent deployments of the application using various factors, such as application runtime metrics and garbage collection metrics. In this manner, an appropriate platform is automatically selected thereby removing the requirement for the user to indicate the type of platform for the target environment.
    Type: Grant
    Filed: April 9, 2013
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ivan M. Heninger, Curtis Hrischuk, Steven D. Ims, Zachary H. Jones, Aaron J. Quirk
  • Patent number: 9083608
    Abstract: A method, system and computer program product for selecting an appropriate platform to run an application deployed in a cloud computing environment. The appropriate platform is selected by employing a two phase process, where the first phase occurs prior to the deployment of the application and the second phase occurs after the application has been deployed. In the first phase, the cloud computing node selects a platform using various factors, such as application binaries, application metadata and artifacts, and qualities of service and application requirements. In the second phase, the cloud computing node determines whether an alternative platform needs to be implemented for subsequent deployments of the application using various factors, such as application runtime metrics and garbage collection metrics. In this manner, an appropriate platform is automatically selected thereby removing the requirement for the user to indicate the type of platform for the target environment.
    Type: Grant
    Filed: January 24, 2012
    Date of Patent: July 14, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ivan M. Heninger, Curtis Hrischuk, Steven D. Ims, Zachary H. Jones, Aaron J. Quirk
  • Patent number: 9075643
    Abstract: A method, system and computer program product for selecting an optimal transport protocol in a cloud computing environment. An application creates a socket to communicate with a destination Virtual Machine (VM). The application requests a daemon agent to query a virtual machine manager to determine if the destination VM is on the same hypervisor as the application. The daemon agent receives a VMCI address (“context ID”) and an indication of the hypervisor associated with the destination VM from the virtual machine manager. The daemon agent enables the transport layer to route traffic over the VMCI protocol to the destination VM using its context ID in response to the destination VM being on the same hypervisor as the application. In this manner, the application is able to route traffic using an optimal transport protocol, including VMCI, depending on peer hypervisor association without requiring any code modifications to the application.
    Type: Grant
    Filed: January 23, 2012
    Date of Patent: July 7, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ivan M. Heninger, Curtis Hrischuk, Zachary H. Jones, Aaron J. Quirk