Dynamic optimization of simulation resources
First Claim
1. A method for facilitating hardware and software metering of tasks performed by a plurality of applications on behalf of a plurality of users, the method comprising the following steps:
- (a) provisioning a first cluster of computing resources on one of a plurality of hardware provider platforms for executing an application on behalf of a user and, in the event a change in computing resources is warranted while the application is running, provisioning a second cluster of computing resources and terminating the application on the first cluster;
(b) configuring the application and initiating execution of the application on the provisioned first cluster and, in the event the second cluster is provisioned by the cluster service, reconfigures the application and resumes execution of the application on the second cluster;
(c) authenticating each user of the application with a corresponding license server before permitting that user to initiate execution of the application on the provisioned first and second cluster.(d) monitoring the total hardware time the provisioned computing resources are in use during execution of the task, wherein the total hardware time includes the sum of the times the provisioned computing resources are in use on the first cluster and the second cluster; and
(e) monitoring the total time the application is in use during execution of the task, wherein the total software time includes the sum of the times the application is in use on the first cluster and the second cluster.
1 Assignment
0 Petitions
Accused Products
Abstract
The present invention dynamically optimizes computing resources allocated to a simulation task while it is running. It satisfies application-imposed constraints and enables the simulation application performing the simulation task to resolve inter-instance (including inter-server) dependencies inherent in executing the simulation task in a parallel processing or other HPC environment. An intermediary server platform, between the user of the simulation task and the hardware providers on which the simulation task is executed, includes a cluster service that provisions computing resources on hardware provider platforms, an application service that configures the simulation application in accordance with application-imposed constraints, an application monitoring service that monitors execution of the simulation task for computing resource change indicators (including computing resource utilization and application-specific information extracted from output files generated by the simulation application) as well as restart files, and a computing resource evaluation engine that determines when a change in computing resources is warranted.
29 Citations
14 Claims
-
1. A method for facilitating hardware and software metering of tasks performed by a plurality of applications on behalf of a plurality of users, the method comprising the following steps:
-
(a) provisioning a first cluster of computing resources on one of a plurality of hardware provider platforms for executing an application on behalf of a user and, in the event a change in computing resources is warranted while the application is running, provisioning a second cluster of computing resources and terminating the application on the first cluster; (b) configuring the application and initiating execution of the application on the provisioned first cluster and, in the event the second cluster is provisioned by the cluster service, reconfigures the application and resumes execution of the application on the second cluster; (c) authenticating each user of the application with a corresponding license server before permitting that user to initiate execution of the application on the provisioned first and second cluster. (d) monitoring the total hardware time the provisioned computing resources are in use during execution of the task, wherein the total hardware time includes the sum of the times the provisioned computing resources are in use on the first cluster and the second cluster; and (e) monitoring the total time the application is in use during execution of the task, wherein the total software time includes the sum of the times the application is in use on the first cluster and the second cluster. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
Specification