| The emergence of multi-core technique has brought a tremendous change to computer architecture and parallel computing. The development of multi-core technology has brought us more and more computing resource which is more and more complex. In this condition, resource management using single operating system will result in the problem of performance isolation, and may also lead to the waste and unreasonable allocation of computing resource. However, the renaissance of the virtualization provides us a key to this problem. The technology can enable a single system to host multiple domains and applications, thus improving the utilization of the system.In high performance computing environment, virtual machine resource management is a dynamic resource management solution to virtual machine on which HPC workloads are running. The project aims at regulation of computing resources of a domain automatically in response to changed resource demand of applications running on it, especially high performance workloads, thus maximizing performance of application and resource utilization. It can reallocate computing resources across domains on a contended host according to characteristic of workloads hosted by a virtual machine to maximize overall performance and when resources become free, it can reduce its share of physical resources to save power, in a dynamic fashion.Virtual machine resource management involves prediction policies of resource demand prediction and resource adjustment. Different methods of prediction and adjustment can impact efficiency of resource management. After thorough tests of high performance computing workloads, several policies and mechanisms of resource adjustment and resource demand prediction are introduced, including support of resource adjustment of HVM guest and a fine-grained adjustment method. Moreover, resource management policy that caters to diverse objectives in a situation where different kinds of virtual machine coexist is presented.Performance evaluation showed that the prototype implemented performs very well with high performance computing workloads and even general workloads. Proposed policies and methods are backed up with experimental results in that the prototype can predict the changing needs of resource accurately and make timely adjustment while with very low overhead and high efficiency. |