Patents by Inventor Christopher W. Roach

Christopher W. Roach 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: 9465644
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
    Type: Grant
    Filed: November 24, 2015
    Date of Patent: October 11, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9317321
    Abstract: Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution. In one embodiment, the VM patterns may be evenly distributed across the pool. In another embodiment, the VM patterns may be distributed according to percentages with which the VM patterns were previously requested. In yet another embodiment, the VM patterns may be grouped into two or more groups that are associated with particular user/customer level(s) (e.g.
    Type: Grant
    Filed: March 11, 2015
    Date of Patent: April 19, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9317337
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to generate a pre-provisioned pool of virtual machines (VMs) in a networked computing environment. Specifically, an install time for possible combinations of software components of a VM in a plurality of software component combinations is calculated. Each respective install time is weighted by a value associated with a provisioning history of software components. At least part of the software component combinations is allocated to the pre-provisioned pool of virtual machines (VMs).
    Type: Grant
    Filed: April 13, 2012
    Date of Patent: April 19, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20160077865
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
    Type: Application
    Filed: November 24, 2015
    Publication date: March 17, 2016
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9250944
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
    Type: Grant
    Filed: August 30, 2011
    Date of Patent: February 2, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9253114
    Abstract: In general, embodiments of the present invention provide an approach for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments of the present invention describe an approach to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests (e.g., instantiate/populate multiple e-commerce ‘shopping carts’). In a typical embodiment, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure.
    Type: Grant
    Filed: October 22, 2014
    Date of Patent: February 2, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9189259
    Abstract: Embodiments of the present invention generally describe how to utilize a pool of raw computing resources to dynamically resize environments due to workloads. Specifically, embodiments of the invention provide an approach for generating a partially pre-provisioned pool of virtual machines (VMs). The pool is typically derived from a history of patterns weighted by a potential state of a corresponding VM image to fulfill a workload request. For each VM instance, this approach determines/calculates the number of times that an instance represents a possible starting point for a VM request. The starting points are then normalized to create a probability distribution of the resulting partially pre-provisioned pool of virtual machines.
    Type: Grant
    Filed: August 22, 2011
    Date of Patent: November 17, 2015
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffery L. Coveyduc, Christopher W. Roach
  • Publication number: 20150186177
    Abstract: Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution. In one embodiment, the VM patterns may be evenly distributed across the pool. In another embodiment, the VM patterns may be distributed according to percentages with which the VM patterns were previously requested. In yet another embodiment, the VM patterns may be grouped into two or more groups that are associated with particular user/customer level(s) (e.g.
    Type: Application
    Filed: March 11, 2015
    Publication date: July 2, 2015
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 9038063
    Abstract: Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution.
    Type: Grant
    Filed: September 7, 2011
    Date of Patent: May 19, 2015
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20150046595
    Abstract: In general, embodiments of the present invention provide an approach for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments of the present invention describe an approach to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests (e.g., instantiate/populate multiple e-commerce ‘shopping carts’). In a typical embodiment, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure.
    Type: Application
    Filed: October 22, 2014
    Publication date: February 12, 2015
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 8954586
    Abstract: Disclosed are approaches for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments describe approaches to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests. In typical embodiments, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure. The provisioning of the VM can then be completed based on the at least one selection of the at least one software program in response to a provisioning request received in the computer data structure.
    Type: Grant
    Filed: July 13, 2011
    Date of Patent: February 10, 2015
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Patent number: 8825862
    Abstract: In general, embodiments of the present invention provide an approach for pre-provisioning computing resource sub-components in order to achieve improved overall provisioning times. In a typical embodiment, when a workload request is received, a set/sequence of tasks needed to complete the workload request is identified. Based on the set of tasks, a set of corresponding computing resources is determined. Rather than provision each computing resource as a whole, embodiments of the present invention break each computing resource into its individual sub-components. Once the sub-components are identified, the time required to provision (i.e., provisioning time) each sub-component is determined (e.g., based on historical data). Based on these provisioning times, an optimal order in which the sub-components should be provisioned is determined, and the sub-components are then provisioned in this order.
    Type: Grant
    Filed: August 1, 2011
    Date of Patent: September 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20130275961
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to generate a pre-provisioned pool of virtual machines (VMs) in a networked computing environment. Specifically, an install time for possible combinations of software components of a VM in a plurality of software component combinations is calculated. Each respective install time is weighted by a value associated with a provisioning history of software components. At least part of the software component combinations is allocated to the pre-provisioned pool of virtual machines (VMs).
    Type: Application
    Filed: April 13, 2012
    Publication date: October 17, 2013
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveydue, Christopher W. Roach
  • Publication number: 20130061221
    Abstract: Embodiments of the present invention provide an approach for determining distributions of virtual machine (VM) patterns across pools of VM instances based upon historical data (e.g., to achieve faster provisioning times). In a typical embodiment, a total pool size for a pool of VM instances is determined (e.g., based on historical data). Then, a distribution of a set of VM instance patterns across the pool is determined (e.g., also based upon historical data). Once the distribution has been determined, the pool of VM instances may be provisioned according to the distribution.
    Type: Application
    Filed: September 7, 2011
    Publication date: March 7, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20130055251
    Abstract: Embodiments of the present invention provide a set of algorithmic methods that can be used to select which partially and/or pre-provisioned virtual machines (VMs) should be used as a base platform to satisfy a new workload (e.g., provisioning) request received in a networked computing environment (e.g., a cloud computing environment). Specifically, when a workload request is received, a set (e.g., at last one) of software programs needed to process the workload request is identified. Then, a set of VMs is selected from a pool of pre-provisioned VMs having the set of software programs. In general, multiple methods and/or factors can be followed to select the set of VMs. Examples include a length of time to install the set of VMs, a probability of the set of VMs being in demand, and/or or a quantity of the set of VMs having the set of software programs. Once the set of VMs has been selected, the set of VMs may be installed, and the workload request can be processed using the set of software programs.
    Type: Application
    Filed: August 30, 2011
    Publication date: February 28, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffery L. Coveyduc, Christopher W. Roach
  • Publication number: 20130055239
    Abstract: Embodiments of the present invention generally describe how to utilize a pool of raw computing resources to dynamically resize environments due to workloads. Specifically, embodiments of the invention provide an approach for generating a partially pre-provisioned pool of virtual machines (VMs). The pool is typically derived from a history of patterns weighted by a potential state of a corresponding VM image to fulfill a workload request. For each VM instance, this approach determines/calculates the number of times that an instance represents a possible starting point for a VM request. The starting points are then normalized to create a probability distribution of the resulting partially pre-provisioned pool of virtual machines.
    Type: Application
    Filed: August 22, 2011
    Publication date: February 28, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20130036226
    Abstract: In general, embodiments of the present invention provide an approach for pre-provisioning computing resource sub-components in order to achieve improved overall provisioning times. In a typical embodiment, when a workload request is received, a set/sequence of tasks needed to complete the workload request is identified. Based on the set of tasks, a set of corresponding computing resources is determined. Rather than provision each computing resource as a whole, embodiments of the present invention break each computing resource into its individual sub-components. Once the sub-components are identified, the time required to provision (i.e., provisioning time) each sub-component is determined (e.g., based on historical data). Based on these provisioning times, an optimal order in which the sub-components should be provisioned is determined, and the sub-components are then provisioned in this order.
    Type: Application
    Filed: August 1, 2011
    Publication date: February 7, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach
  • Publication number: 20130019016
    Abstract: In general, embodiments of the present invention provide an approach for pre-provisioning cloud computing resources such as virtual machines (VMs) in order to achieve faster and more consistent provisioning times. Embodiments of the present invention describe an approach to generate a pre-provisioned pool of virtual machines that are utilized when one or more consumers start to initiate a large volume of requests (e.g., instantiate/populate multiple e-commerce ‘shopping carts’). In a typical embodiment, a selection of an operating system to be associated with a VM is received in a computer data structure. A provisioning of the VM will then be initiated based on the selection of the operating system. Thereafter, at least one selection of at least one software program to be associated with the VM will be received in the computer data structure.
    Type: Application
    Filed: July 13, 2011
    Publication date: January 17, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jason L. Anderson, Gregory J. Boss, Jeffrey L. Coveyduc, Christopher W. Roach