METHOD AND APPARATUS FOR USING VIRTUAL MACHINE TECHNOLOGY FOR MANAGING PARALLEL COMMUNICATING APPLICATIONS
First Claim
1. A method of managing a distributed-memory parallel application running on multiple servers, comprising:
- dynamically moving a plurality of executable program components, said plurality of executable program components running on one of a plurality of virtual machines, said moving using migration of the virtual machines between physical servers.
0 Assignments
0 Petitions
Accused Products
Abstract
A method (and system) for managing a distributed-memory parallel application running on multiple servers, includes dynamically moving a plurality of executable program components, where each of the plurality of executable program components are running on one of a plurality of virtual machines, using migration of the virtual machines between physical servers. The load balancing is operated based on a workload of each of the virtual machines and servers, where a virtual machine, or a plurality of virtual machines, are transferred to balance the workload between each of the servers.
112 Citations
37 Claims
-
1. A method of managing a distributed-memory parallel application running on multiple servers, comprising:
dynamically moving a plurality of executable program components, said plurality of executable program components running on one of a plurality of virtual machines, said moving using migration of the virtual machines between physical servers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 32, 33, 34, 35, 36)
-
22. A computer system, comprising:
-
multiple servers running a distributed-memory parallel application; and means for dynamically moving a plurality of executable program components of said parallel application, each of said plurality of executable program components running on one of a plurality of virtual machines. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A computer system, comprising:
-
an application design unit that designs a distributed-memory parallel application; an application partition unit that partitions said application into a plurality of executable program components; a packaging unit that packages said executable program components into one of said plurality of virtual machines; an assignment unit that assigns said plurality of virtual machines to one of a plurality of physical servers; a virtual machine monitoring unit that monitors an operation of said plurality of virtual machines; and a moving unit that shifts a first virtual machine of said plurality of virtual machines from a first physical server to a second physical server. - View Dependent Claims (29, 30, 31)
-
-
37. A system for managing a distributed-memory parallel application, comprising:
-
a plurality of servers; a plurality of virtual machines, each virtual machine respectively operating a portion of the application; and a virtual machine monitoring and migrating unit that monitors an operation of said plurality of virtual machines and shifting said virtual machines between said plurality of servers to balance the workload.
-
Specification