Efficient Resource Selection Framework to Enable Cloud for HPC Applications
Efficient Resource Selection Framework to Enable Cloud for HPC Applications
35
Authorized licensed use limited to: Nirma University Institute of Technology. Downloaded on October 03,2024 at 07:16:44 UTC from IEEE Xplore. Restrictions apply.
2013 4th International Conference on Computer and Communication Technology (ICCCT)
object changes clusters, or equivalently, until the centroids one of the reason for performance degradation in cloud is
remain the same. The algorithm proceeds as follows. network. Next step is to select best machines, in terms of
1. Select K data objects as the initial centroids network bandwidth from the selected cluster.
2. Repeat For implementing this we are using Network
3. Form K clusters by assigning all data objects to the Weather Service (NWS) for network monitoring purpose.
closest centroid Network Weather service (NWS) [8] is a distributed system
4. Recompute the centroid of each cluster that periodically monitors and dynamically forecasts the
5. Until the centroid doesn’t change performance of various network and computational resources
This algorithm can be used for forming dynamic clusters on over a given time interval. It is possible to monitor the
cloud. Flow chart shown in fig.1 shows the K-means latency and throughput of any TCP/IP link, CPU load, the
algorithm used for forming dynamic clusters available free memory or the free disk space on any host.
To assign a virtual machine to the closest centroid, a We are measuring the available bandwidth on the
proximity measure is required that quantifies the notion of link between the two virtual machines on two different hosts
“closest” for the specific data under consideration. Euclidean using NWS. Available bandwidth of a link is usually less
(L2) distance is often used for data points in Euclidean space than the link capacity. Once we know the available
in the basic K-Means algorithm. bandwidth of each link in cluster, we choose ‘n’ efficient
In this project, instead of Euclidean space as a machines in the best cluster which satisfies our bandwidth
proximity measure we use execution time of a Benchmark criteria. If best cluster contains less than the number of
Application on VMs of different configuration for centroid. machines required, then we merge first two best clusters.
The benchmark application considered is ‘Game of Life’. It is This procedure is continued till number of machines is
a set of simple rules that can be used to simulate complicated enough. K-means clustering algorithm will be NP-Hard if ‘k’
cellular automata. Fig 1 defines modifies version of k-means or ‘d’ is not fixed. But for fixed ‘k’, ‘d’ and ‘n’ time
for our framework. complexity will be O(ndk+1 log n) where ‘n’ is number of
virtual machines to be clustered. For sorting we have used
START
merge sort with time complexity (n log n).
Algorithm below is the combination of K-means best
clustering and then choosing ‘n’ efficient machines
Read K 1. Start
2. Select K VM’s as the initial centroids
3. Repeat
Consider first ‘K’ VM as Centroids 4. Form K clusters by assigning all VMs to the closest
centroid
Assign all VM’s to closest centroids depending on 5. Recompute the centroid of each cluster
their execution time 6. Until the centroid doesn’t change
7. N= Number of efficient VMs required for HPC
Re-compute the centroid the formed cluster application
8. If (Number of VMs in best cluster< N)
a. Merge best clusters
Same as previous
b. Until number of VMs is <N
centroids? 9. Calculate average available bandwidth for every link
NO 10. Get first ‘N’ efficient VMs which satisfies required
YES bandwidth criteria
STOP
11. Stop
36
Authorized licensed use limited to: Nirma University Institute of Technology. Downloaded on October 03,2024 at 07:16:44 UTC from IEEE Xplore. Restrictions apply.
2013 4th International Conference on Computer and Communication Technology (ICCCT)
running on it. These virtualized "computers," are known defined to be either live or dead. The game operates in
as virtual machines. They run operating systems and iterations, called ticks. Each tick applies the four rules of the
applications that are often referred to as guest software.
Best Clusters Centroid Number of virtual
CPU Memory Execution Time in (Execution Time machines in the
(in %) Seconds in Sec) best clusters
0 1.53 6
50 512MiB 2.02 1 1.66 7
63 520MiB 1.99 2 1.71 7
72 532MiB 1.80 Table 3: Execution Speed and number of VMs in each
85 545MiB 1.72
cluster
100 560MiB 1.70 game to every cell on the board simultaneously. The
115 580MiB 1.68
benchmark application is executed for a Virtual machine with
125 600MiB 1.66
different configurations and the results are as shown in
150 625MiB 1.59
table1.
I65 680MiB 1.60
Next we considered the results of previous step to
170 700MiB 1.61
consider 35 VM’s for our simulation of K-Means clustering
180 775MiB 1.60
algorithm to form 6 clusters. In the beginning, 6 centroids
188 800MiB 1.53
were chosen randomly. The number of virtual machines to
Table 1: Execution Time of Benchmark Applications on be clustered and the number of clusters are to be decided by
Various VMs the user. The virtual machines are assigned to the closest
centroids as per the K-Means algorithm and clusters of
virtual machines are formed based on execution time. Table 2
Centroid Virtual Machine Cluster shows the clusters formed.
1.53 22,16,18,23,25,34 0 Out of six clusters formed, first three with minimum
1.66 28,2,6,7,13,20,3 1 time are considered best. Table 3 shows the best clusters
1.71 21,9,10,17,27,30,31 2 along with number of VMs in each cluster. It is also observed
1.72 26,1,11,24 3 that the best cluster comprises of virtual machines of similar
1.87 4,0,3,5,14,19,29 4 capabilities and they are also found to be more powerful than
1.99 15,8,12,33 5 other clusters.
Table 2: Clusters After obtaining the best clusters using K-means
algorithm next job is to identify the efficient machines in the
The Xen Cloud Platform (XCP) is an open source enterprise- best clusters. This can be done by obtaining available
ready server virtualization and cloud computing platform, bandwidth on the links between the VM’s in each of the best
delivering the Xen Hypervisor with support for a range of cluster. Then, by taking the average of each of these
guest operating systems including Windows® and Linux® available bandwidth on the links to each VM, the efficient
network and storage support, management tools in a single, machines in the best clusters are identified. Table 4 shows the
tested installable image, which is also called XCP appliance. available bandwidth on the link to each of the virtual
The benchmark application considered is ‘Game of machines in the best cluster.
Life’. It is a set of simple rules that can be used to simulate Average available bandwidth on the links of each
complicated cellular automata. It was invented by John VM is shown in table 5 for “best cluster 0”. Once the average
Conway, a British Mathematician. The game is designed bandwidth of the links for each virtual machine is obtained
around the following simple rules: and sorted in ascending order, first ‘n’ virtual machines are
• Any live cell with fewer than two live neighbors considered as the efficient virtual machines.
dies, as if caused by under population
• Any live cell with more than three live neighbors VM 0 1 2 3 4 5
dies, as if by overcrowding 0 0.00 55.43 66.31 56.78 51.11 56.78
• Any live cell with two or three live neighbors lives 1 55.43 0.00 72.12 66.31 55.43 65.23
on to the next generation 2 55.43 65.23 0.00 56.78 66.31 65.23
• Any dead cell with exactly three live neighbors 3 72.13 72.12 45.55 0.00 66.31 72.12
becomes a live cell. 4 45.55 55.43 72.13 51.11 0.00 65.23
The operation of the game starts with an initial 5 72.13 65.23 55.43 56.78 65.23 0.00
configuration on a two dimensional grid. Each grid square is
Table 4: Available Bandwidth between
VMs in Best Cluster
37
Authorized licensed use limited to: Nirma University Institute of Technology. Downloaded on October 03,2024 at 07:16:44 UTC from IEEE Xplore. Restrictions apply.
2013 4th International Conference on Computer and Communication Technology (ICCCT)
Virtual Average Harris, Alex Ho,Rolf Neugebauery, Ian Pratt, Andrew Warfield
Machine in SOSP'03, Xen and the art of
0 57.28 virtualization, October 19.22, 2003, Bolton Landing, New York,
USA.
1 62.90
[7] Nan Li , Yiming Li A study of Inter – Domain communication
2 61.80 mechanisms on Xen – based hosting platforms , Advanced
3 65.65 Topics in operating systems
[8] Rich Wolski, Neil Spring, and Jim Hayes, The Network Weather
4 57.89 Service : A Distributed Resource Performance Forecasting
5 62.96 service for metacomputing, Journal of Future Generation
Computing Systems, 15(5-6):757.768, October
Table 5: VM’s Selected with Best Available 1999.
Bandwidth [9] Shi Na ,Liu Xumin, Research on k-means Clustering Algorithm :
An Improved kmeans
Clustering Algorithm, Third International Symposium on
V CONCLUSION AND FUTURE WORK Intelligent, Information Technology and Security Informatics,
2010
High Performance Computing often requires the availability [10] Edward Walker;login, Benchmarking Amazon EC2 for High
of a massive number of compute nodes for performing large Performance Scientific Computing, October 2008, Volume 33,
scale experiments. Clusters/Grids are considered as the best Number 5.
platform for their implementation. Scalability of cloud will
be very much suitable for forming better cluster/grid. But at [11] Zach Hill and Marty Humphrey, A quantitative analysis of High
the same time heterogeneity of cloud environment poses a Performance Computing with Amazon’s EC2 Infrastructure : The
challenge. Proposed work “Efficient Resource Selection Death of the local cluster ?,Proceedings of the 10th IEEE/ ACM
Framework to Enable Cloud for HPC applications” focuses International Conference on Grid Computing (Grid 2009). Oct
13-15 2009. Banff, Alberta, Canada.
on selecting the best VMs on cloud for HPC applications. K- [12] Penguin on demand,
Means algorithm is used to cluster the virtual machines http://www.penguincomputing.com/POD/Penguin_On_Demand
dynamically based on similarity metric (execution time).
Also most of the HPC applications are not only compute
intensive but they are also communication intensive. But
cloud bandwidth is shared by the Virtual machines.
Performance of application can be enhanced by considering
the network bandwidth as one of the criteria for selecting the
machines. The selection is done by considering the average
bandwidth between the VMs. We have observed that the
VMs that are selected by the proposed method is
approximately same as the result of brute force technique
REFERENCES
38
Authorized licensed use limited to: Nirma University Institute of Technology. Downloaded on October 03,2024 at 07:16:44 UTC from IEEE Xplore. Restrictions apply.