Research Article Optimization Approach for Resource ... - Hindawi

5 downloads 75467 Views 1MB Size Report
Jan 28, 2016 - and managed. .... mainly by the number of cores, like Amazon EC2 [15]. ..... resource management for service hosting platforms,” in Pro-.
Hindawi Publishing Corporation International Journal of Distributed Sensor Networks Volume 2016, Article ID 3479247, 6 pages http://dx.doi.org/10.1155/2016/3479247

Research Article Optimization Approach for Resource Allocation on Cloud Computing for IoT Yeongho Choi1 and Yujin Lim2 1

Department of Computer Science, University of Suwon, San 2-2, Wau-ri, Bongdam-eup, Hwaseong, Gyeonggi-do 445-743, Republic of Korea 2 Department of Information Technology Engineering, Sookmyung Women’s University, Cheongpa-ro 47-gil 100, Yongsan-gu, Seoul 04310, Republic of Korea Correspondence should be addressed to Yujin Lim; [email protected] Received 28 December 2015; Accepted 28 January 2016 Academic Editor: Fan Wu Copyright © 2016 Y. Choi and Y. Lim. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Combinatorial auction is a popular approach for resource allocation in cloud computing. One of the challenges in resource allocation is that QoS (Quality of Service) constraints are satisfied and provider’s profit is maximized. In order to increase the profit, the penalty cost for SLA (Service Level Agreement) violations needs to be reduced. We consider execution time constraint as SLA constraint in combinatorial auction system. In the system, we determine winners at each bidding round according to the job’s urgency based on execution time deadline, in order to efficiently allocate resources and reduce the penalty cost. To analyze the performance of our mechanism, we compare the provider’s profit and success rate of job completion with conventional mechanism using real workload data.

1. Introduction Over recent years, the growth of the IoT (Internet of Things) is expected to create a pervasive connection of things such as embedded devices, sensors, and actuators. This will inevitably result in the generation of enormous amount of data, which have to be autonomously stored, processed, accessed, and managed. Cloud computing has been recognized as a paradigm for the big data problem [1]. Cloud computing allows the sensing data to be stored and used intelligently for smart applications. One of challenges which arose when IoT meets cloud is resource allocation by which a cloud provider efficiently allocates its resources to cloud users with SLA constraints. The dominating performance factors in resource allocation include provider’s and user’s profit, resource utilization, and QoS (Quality of Service) [2]. For resource allocation in cloud, auction-based model is a popular approach in resource allocation and pricing [3]. In particular, combinatorial auction is preferred in cloud computing because it allows a user to buy a package of resources rather than an individual resource. Since

the auction is done on group of resources, it provides efficient resource allocation and helps to improve the profit to both a provider and a user. The other issue of resource allocation in cloud computing is meeting SLA (Service Level Agreement) established with a user. Before a provider provisions a service to a user, a provider and a user need to establish SLA contract. The SLA is an agreement that specifies QoS between a provider and a user [4]. We define two-levels of SLA to represent different objectives: class-based SLA and job-based SLA [5]. In classbased SLA, for each job class, QoS is measured based on performance metrics. In job-based SLA, QoS is measured using the metrics of individual jobs. Any single job with a poor service quality immediately affects the measured QoS and incurs some SLA penalty cost. We believe the job-based SLA is a more robust type of SLAs from the users’ perspective than providers’ perspective and we focus on this. In general, SLA is defined in terms of various performance metrics, such as service latency, throughput, consistency, and security. In our paper, SLA is defined in terms of deadline along with execution time of each job. The deadline violation is

2 important from QoS guarantees perspective. It causes loss of profit for a provider due to incompletion to execute the certain jobs and SLA penalty cost [6]. Considering SLA guarantee, we propose a resource allocation mechanism in combinatorial auction system for cloud computing. For efficient resource allocation, winner determination problem in the auction should be solved. The conventional winner determination mechanisms are proposed to maximize resource utilization and a provider’s profit for each time interval. However, the profit can be maximized by reducing the penalty cost for SLA violation. To reduce SLA violations, the deadline constraints need to be considered when winner is determined in the auction. Thus, we propose a winner determination mechanism with consideration for the deadline constraints to maximize the provider’s profit. The rest of the paper is organized as follows. In Section 2, we discuss the related work. In Section 3, we present our winner determination mechanism. In Sections 4 and 5, we evaluate the performance of our mechanism and conclude the paper with the future research plan.

2. Related Work We investigate resource allocation strategies for the SLAbased cloud computing framework. Several proposals in the literature are based on utility functions to dynamically allocate resources. In [7], a two-tier resource management approach based on utility functions is presented. It defines the VM (Virtual Machine) utility function as a linear function of the CPU resources. In [8], an autonomic resource manager is presented to control the virtualized environment which decouples the provisioning of resources from the dynamic placement of VMs. It finds an optimal number and size of VMs to allocate CPU resources to applications while maximizing the utility function. There are several proposals that dynamically manage VMs by optimizing objective functions. Reference [9] determines dynamic placement of VMs based on minimizing an objective cost function using linear programming. The function is to provide an economic model between infrastructure providers and users. The pMapper [10] system includes a power-aware application placement controller to optimize a cost-performance function. It uses the bin-packing algorithm based on a modified version of FFD (First-Fit Decreasing) to place the VMs on the servers, while trying to meet the target utilization. Researchers have investigated maximizing the profit under SLA constraints. In [11], a multilevel generalized assignment problem is formulated. To solve the problem, the first-fit heuristic is used for maximizing the profit under SLA and the power budget constraint. In [12], a combinatorial optimization problem is defined to maximize the provider’s profit from SLA compliant placement. The problem is presented as a multiunit combinatorial auction. To solve the problem, a column generation method is presented to obtain near optimal solutions.

International Journal of Distributed Sensor Networks A combinatorial auction allows bidders to bid for a combination of multiple resources. In other words, bids are submitted for the whole bundle as a single unit. After the auction, each bidder receives either the whole bundle or nothing. In the auction, the goal of a cloud provider is to efficiently allocate the available resources to users and to maximally generate its revenue. In [13], CA-provision is proposed as an allocation mechanism to maximize the revenue for a cloud provider as well as maximize the resource utilization. The provider’s revenue has three elements: the revenue of the resource, the cost of the VM instances that are allocated to the users, and the cost of keeping the remaining resources idle. The purpose of considering the two costs is to reduce the cloud provider’s losses. Reference [14] proposes a model, called ABRA (Auction-Based Resource Co-Allocation) to solve the resource coallocation problem. It imposes penalty costs on unallocated resources after an auction in order to improve the resource utilization. First, a new neighborhood structure is proposed to define an ordering as a permutation of the bids in the auction. Then, the search space is defined as the set of all possible orderings to find the optimum solution. Finally, various neighbor selection methods are used to find the solution. The conventional resource allocation mechanisms in combinatorial auction system present winner determination algorithms to reduce the penalty cost in each bidding round. However, since they do not consider the probability of SLA violation when deadline gets to end, the performance is limited. We present a new winner determination algorithm with consideration for deadline constraints of jobs (i.e., urgency) to reduce the penalty cost for SLA violation and maximize the profit of the provider.

3. Proposed Mechanism A cloud provider offers computing services to users through 𝑚 different types of VM instances, VM1 , VM2 , . . . , VM𝑚 . The computing power of a VM instance of type VM𝑖 , 𝑖 = 1, . . . , 𝑚, is 𝑤𝑖 , where 𝑤1 = 1, 𝑤1 < 𝑤2 < ⋅ ⋅ ⋅ < 𝑤𝑚 , and 𝑤 = (𝑤1 , 𝑤2 , . . . , 𝑤𝑚 ) [13]. We consider that 𝑤 is determined mainly by the number of cores, like Amazon EC2 [15]. Let 𝑘𝑖 be the number of VM𝑖 instances provisioned by the provider. Let 𝑀 be the maximum number of VM instances provisioned by the provider. The provider provisions a combination of instances given by the vector (𝑘1 , 𝑘2 , . . . , 𝑘𝑚 ) as long as ∑𝑚 𝑖=1 𝑤𝑖 𝑘𝑖 ≤ 𝑀. We consider 𝑛 users 𝑢1 , . . . , 𝑢𝑛 who request computing resources from the provider specified as bundles of VM instances. A user 𝑢𝑗 requests VM instances for its job 𝑗

𝑗 job𝑗 by submitting a bid 𝐵𝑗 = (𝑟1 , . . . , 𝑟𝑚 , V𝑗 ) to the provider, 𝑗

where 𝑟𝑖 is the number of requested instances of type VM𝑖 and V𝑗 is the price user 𝑢𝑗 is willing to pay to use the requested bundle of VMs for a unit of time. In addition, let us denote by 𝑝𝑗 the amount paid by user 𝑢𝑗 for using its requested bundle of VMs, and 𝑝𝑗 and V𝑗 can be different (usually 𝑝𝑗 ≤ V𝑗 ). We assume that the users are single minded which means a user bids for only one bundle. The provider runs auction mechanism periodically to allocate the VM instances. Thus, users bid for obtaining

International Journal of Distributed Sensor Networks

3

𝑑𝑗 𝐶𝐾

(1)

𝑑𝑗 ≥ 𝐾𝑗 .

(2)

𝑗

subject to The success probability of 𝐾𝑗 biddings before 𝑑𝑗 is as follows: 1 . 𝐶 𝑑𝑗

(3)

𝐾𝑗

We identify that the probability of successful job completion needs to be increased as 𝑓𝑗 or 𝜃𝑗 increases. At the current round 𝜃𝑗 with 𝑘𝑗 successful bidding, to complete the job before 𝑑𝑗 , 𝐾𝑗 − 𝑘𝑗 successful biddings need more. The remaining rounds before 𝑑𝑗 are 𝑑𝑗 − 𝜃𝑗 = 𝑑𝑗 − 𝑓𝑗 − 𝑘𝑗 . Thus to get the probability of job completion before 𝑑𝑗 , (3) is rewritten as follows: Pr𝑗 =

1 (𝑑𝑗 −𝑓𝑗 −𝑘𝑗 ) 𝐶(𝐾𝑗 −𝑘𝑗 )

=

(𝐾𝑗 − 𝑘𝑗 )! (𝑑𝑗 −𝑓𝑗 −𝑘𝑗 ) 𝑃(𝐾𝑗 −𝑘𝑗 )

.

(4)

Using (4), we calculate the expected value of the provider’s profit for each user to determine the winners at a bidding round. The profit is divided into two cases. When the job is completed before deadline, the profit is the difference between revenue and running cost 𝐶𝑅 of the VM instances to be allocated to the user. When the job is not completed before deadline and SLA is violated, the provider should pay penalty . With the probability of SLA violation the penalty cost 𝐶𝑗 profit

in (4), we define 𝐸𝑗 the expected value of the provider’s profit for 𝑢𝑗 as follows: profit

𝐸𝑗

𝑚

𝑗

= Pr𝑗 (V𝑗 − 𝐶𝑅 ∑ 𝑤𝑖 𝑟𝑖 ) 𝑖=1

+ (1 − Pr𝑗 ) (V𝑗 −

𝑚

𝑗 𝐶𝑅 ∑ 𝑤𝑖 𝑟𝑖 𝑖=1

(5) −

penalty 𝐶𝑗 ).

1.0 0.8 0.6 Pr j

the VM bundles for a unit of time. If the user’s job requires a bundle for more than one unit of time, the user has to bid again in the next round of the auction, separately. A user bids until its application is completed or its deadline is exceeded. Conventional winner determination mechanisms do not consider that each job has different urgency. In other words, the job which has impending deadline needs to have a weight to the job with the time left before the deadline in the competitive bidding. To maximize the provider’s profit by reducing the penalty cost for SLA violations, we use the probability of deadline violations by considering the job’s urgency, when winners are determined [16]. In our paper, SLA is defined in terms of completion deadline 𝑑𝑗 for job job𝑗 of user 𝑢𝑗 . For simplicity’s sake, we assume that a user has one job at a time. Our problem is that 𝐾𝑗 , 𝐾𝑗 ≤ 𝑑𝑗 biddings should be succeeded to complete job𝑗 before 𝑑𝑗 gets to end. The current bidding round 𝜃𝑗 is the sum of the number of successful biddings 𝑘𝑗 , 𝑘𝑗 < 𝐾𝑗 and the number of bidding failures 𝑓𝑗 ; in other words 𝜃𝑗 = 𝑘𝑗 + 𝑓𝑗 and 𝜃𝑗 ≤ 𝑑𝑗 . We define the problem as the combination of 𝑑𝑗 taken 𝐾𝑗 :

0.4 0.2 0.0

0

2

4 6 Number of biddings

8

10

Number of bidding successes (kj ) Number of bidding failures (fj )

Figure 1: Pr𝑗 with varying the number of biddings.

profit

profit

In (6), we normalize 𝐸𝑗 with the maximum value of 𝐸𝑗 to remove the dependence on V𝑗 . The maximum value of profit

indicates the expected value when there is no SLA 𝐸𝑗 violation: profit

𝐸𝑗

𝑗

V𝑗 − 𝐶𝑅 ∑𝑚 𝑖=1 𝑤𝑖 𝑟𝑖

.

(6)

Using (6), winners are determined at each round. Figure 1 shows that Pr𝑗 increases as 𝑘𝑗 or 𝑓𝑗 increases in our mechanism. We set 𝑑𝑗 and 𝐾𝑗 to 15 and 10, respectively. Thus, when 𝑓𝑗 > 5, job𝑗 is not completed before the deadline. In the figure, Pr𝑗 gets to 1 in order to complete the job before the deadline, when 𝑓𝑗 = 5. Besides, as you can see, 𝑓𝑗 has profit

increases as the bigger impact than 𝑘𝑗 on Pr𝑗 . Because 𝐸𝑗 Pr𝑗 increases, the probability that 𝑢𝑗 is to be a winner also increases. Thus, the jobs with impending deadlines are likely to be determined as winners. Through the determination, deadline violation can be reduced and the profit of the provider can be improved.

4. Performance Analysis To evaluate the performance of our mechanism, we conduct simulation with real workload data and compare the performance of the conventional mechanism (CA-provision [13]). In preliminary experiments, we use UniLu-Gaia-2014 workload logs from the Parallel Workload Archive [17]. In the logs, the average number of submitted jobs per round is set to about 24 and the average number of processors required per penalty to job is 9.97. In the experiments, we set 𝐶𝑅 to 0.5 and 𝐶𝑗 10 percent of V𝑗 . 𝐾𝑗 is randomly selected from (1, 20) and the average execution time of a job is multiplying bidding time interval Δ𝑡 with 𝐾𝑗 . Figure 2 shows the probability of bidding success at current round 𝜃𝑗 when the remaining bidding rounds before 𝑑𝑗 vary. In CA-provision, the probability does not show

4

International Journal of Distributed Sensor Networks 1.0 Success rate of job completion

Probability of bidding success at current round 𝜃j

1.0 0.8 0.6 0.4 0.2 0.0

0

5 10 15 20 Remaining bidding rounds before dj

Our

0.8 Our Our

0.6 0.4

Our

0.0

25

×1.5

×2.0

×2.5

×3.0

Deadline factors Our CA-provision

Figure 2: The probability of bidding success at a current round.

Figure 4: The success rate of job completion with varying the deadline factors.

1.0

20000

0.8 Profit of cloud provider

Success rate of job completion

CA

0.2

Our CA-provision

0.6 0.4 0.2 0.0

CA

CA

CA

0

10

20 30 User ID

40

Our CA-provision

Figure 3: The success rate of job completion for users.

15000

Our

Our

Our CA

CA

Our

CA

CA 10000

5000

0 ×1.5

×2.0

×2.5

×3.0

Deadline factors Our CA-provision

Figure 5: The provider’s profit with varying the deadline factors.

the big change. In our mechanism, the probability increases as the remaining round decreases. By considering the job’s urgency, the probability gets to 1 as the deadline gets to end, and the jobs with impending deadlines are likely to be determined as winners. Figure 3 shows the success rate of job completion for each user. The success rate of job completion indicates the number of jobs completed before the deadline to the number of jobs submitted by user 𝑢𝑗 in the total simulation time. The success rate of ours is about 27.4% higher than that of CAprovision. In Figure 4, the deadline of a job is determined by multiplying a deadline factor 𝜏𝑗 with 𝐾𝑗 ; thus the deadline is 𝑑𝑗 = 𝜏𝑗 𝐾𝑗 . Here, 𝜏𝑗 is chosen from 1.5, 2.0, 2.5, and 3.0. The figure shows the success rate of job completion with varying the deadline factors. As you can see, the success rate increases as the deadline increases. The success rate of our mechanism is about 2%, 13.3%, 19.8%, and 27.4% higher than that of CA-provision, respectively. Figures 3 and 4 show that our mechanism effectively reduces the deadline violation and increases the success rate of job completion.

Figure 5 shows the profit of a cloud provider with varying the deadline factors. The profit of our mechanism is about 10.5%, 12%, 10%, and 13% higher than that of CA-provision, respectively. This figure shows that, through the winner determination by considering the job’s urgency, deadline violation decreases and the profit of the provider increases. To evaluate the performance in different system scenarios, we use eight workload logs from the Parallel Workload Archive [17]. In Table 1, we show a brief description of the workload files. The table describes the log file name, the average execution time of the jobs (𝑇wl ), the average number of jobs submitted for a unit of time (𝐽wl ), the average number of processors required per job (𝑃wl ), and the total number of processors in the system (𝑀wl ). From the real workload data, we use several data such as job number, execution time, the number of allocated processors, average CPU time used, and user ID. Some records in a log file are not specified because the original files had missing information. So if a record data is missing, we randomly

International Journal of Distributed Sensor Networks

5

Table 1: Real workload data.

1.4

0.6 0.4

Our

Our CA

Our

CA

Our

Our

CA CA

CA

Our

CA

Our Our CA CA

CA

0.6 0.4 0.2

UniLu-Gaia󳰀(14.9)

LCG(7.65)

0.0

Workload file (normalized load) CA

CAOur

0.2

Our

CA Our

Our

CA

CA

0.8

Our

LLNL-uBGL(7.85)

Our CAOur

Our

1.0

PIK-IPLEX(2.37)

Success rate of job completion per processor-round

1.0 0.8

1.2

RICC󳰀 (1.58)

𝑀wl 8192 4008 9216 4096 2560 4096 2048 64

LLNL-Atlas(0.82)

𝑃wl 62.36 42.36 401 16.45 34.49 34.52 576 9.97

LLNL-Thunder(0.53)

𝐽wl (jobs/hr) 10.26 33.62 7.6 119.87 20.46 261.16 22.34 24.06

SDSC-DS(0.21)

𝑇wl (hours) 13 5 8 5 40 1 7 3

Profit of cloud provider per processor-round

Log file SDSC-DS LLNL-Thunder LLNL-Atlas RICC PIK-IPLEX LCG LLNL-uBGL UniLu-Gaia

Our CA-provision

Figure 7: The provider’s profit with varying the workloads.

CA

UniLu-Gaia󳰀(14.9)

LLNL-uBGL(7.85)

LCG(7.65)

PIK-IPLEX(2.37)

RICC󳰀 (1.58)

LLNL-Atlas(0.82)

LLNL-Thunder(0.53)

SDSC-DS(0.21)

0.0

Workload file (normalized load) Our CA-provision

Figure 6: The success rate of job completion with varying the workloads.

generate the record data within the average range of the other records using a uniform distribution. In RICC and UniLu-Gaia of the eight workloads, we decrease 𝑀wl by about 70% to make competitive environment. Thus, we mark the two workloads with 𝑅𝐼𝐶𝐶󸀠 and 𝑈𝑛𝑖𝐿𝑢-𝐺𝑎𝑖𝑎󸀠 in the figures. Since the workloads are heterogeneous in several dimensions, we need normalization for workload logs. To normalize workload logs, we use normalized load in a workload wl, 𝜂wl = (𝐽wl ×𝑇wl ×𝑃wl )/𝑀wl . The normalized load measures the average amount of load per processor. When analyzing the results, we use the normalized load to rank the heterogeneous log files. Figure 6 shows the success rate of job completion in different workloads. In the experiments, we set 𝜏𝑗 to 2.0. Our mechanism has 18.2% more success rate than CA-provision. Figure 7 shows the profit of a cloud provider. Since the workloads are generated for different durations of time for systems with different number of processors, we scale the profit with respect to the total simulation hours and the

number of processors. We define the profit per processorpr hour as Πwl = Πwl /(𝑀wl × 𝑅wl ), where Πwl is the sum of profits in all bidding round and 𝑅wl is the number of biddings provided in each workload [13]. As you can see, our mechanism has about 26.8% more profit than CA-provision. As a result, our mechanism shows the better performance with respect to the success rate and the profit than CAprovision in various workload scenarios.

5. Conclusion To increase the provider’s profit, the penalty cost for SLA violations needs to be considered. To reduce the cost, we consider the job’s urgency based on the deadline constraint when winners are determined in the combinatorial auction. Taking the urgency into consideration, we calculate the probability of deadline violation for each job. Then, using the probability, we calculate the expected value of the provider’s profit when the corresponding user is selected as a winner at a bidding round. The user with the larger expected value is likely to be determined as a winner. Thus, the penalty cost decreases by the decrease of SLA violation, and the provider’s profit increases. The experimental results show that our mechanism has higher profit and success rate of job completion than these of the conventional mechanism. We look forward to compare the other winner determination mechanisms in the combinatorial auction and demonstrate effectiveness of our mechanism.

Conflict of Interests The authors declare that there is no conflict of interests regarding the publication of this paper.

6

International Journal of Distributed Sensor Networks

Acknowledgment This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (NRF2015R1D1A1A09057141).

[13]

[14]

References [1] H.-L. Truong and S. Dustdar, “Principles for engineering IoT cloud systems,” IEEE Cloud Computing, vol. 2, no. 2, pp. 68–76, 2015. [2] U. Lampe, M. Siebenhaar, A. Papageorgiou, D. Schuller, and R. Steinmetz, “Maximizing cloud provider profit from equilibrium price auctions,” in Proceedings of the IEEE 5th International Conference on Cloud Computing (CLOUD ’12), pp. 83–90, Honolulu, Hawaii, USA, June 2012. [3] S. R. Shirley and P. Karthikeyan, “A survey on auction based resource allocation in cloud environment,” International Journal of Research in Computer Applications and Robotics, vol. 1, no. 9, pp. 96–102, 2013. [4] S. Son, G. Jung, and S. C. Jun, “An SLA-based cloud computing that facilitates resource allocation in the distributed data centers of a cloud provider,” Journal of Supercomputing, vol. 64, no. 2, pp. 606–637, 2013. [5] H. J. Moon, Y. Chi, and H. Hacıg¨um¨u¸s, “SLA-aware profit optimization in cloud services via resource scheduling,” in Proceedings of the 6th International Conference on World Congress on Services (SERVICES ’10), pp. 152–153, IEEE, Miami, Fla, USA, July 2010. [6] M. Alrokayan, A. V. Dastjerdi, and R. Buyya, “SLA-aware provisioning and scheduling of cloud resources for big data analytics,” in Proceedings of the 3rd IEEE International Conference on Cloud Computing for Emerging Markets (CCEM ’14), pp. 1–8, Bangalore, India, October 2014. [7] D. Minarolli and B. Freisleben, “Utility-based resource allocation for virtual machines in cloud computing,” in Proceeding of the 16th IEEE Symposium on Computers and Communications (ISCC ’11), pp. 410–417, Kerkyra, Greece, July 2011. [8] H. N. Van, F. D. Tran, and J.-M. Menaud, “Autonomic virtual resource management for service hosting platforms,” in Proceedings of the ICSE Workshop on Software Engineering Challenges of Cloud Computing (CLOUD ’09), pp. 1–8, Vancouver, Canada, May 2009. [9] J.-G. Park, J.-M. Kim, H. Choi, and Y.-C. Woo, “Virtual machine migration in self-managing virtualized server environments,” in Proceeding of the 11th IEEE International Conference on Advanced Communication Technology (ICACT ’09), pp. 2077– 2083, February 2009. [10] A. Verma, P. Ahuja, and A. Neogi, “pMapper: power and migration cost aware application placement in virtualized systems,” in Middleware 2008: ACM/IFIP/USENIX 9th International Middleware Conference Leuven, Belgium, December 1– 5, 2008 Proceedings, vol. 5346 of Lecture Notes in Computer Science, pp. 243–264, Springer, Berlin, Germany, 2008. [11] W. Shi and B. Hong, “Towards profitable virtual machine placement in the data center,” in Proceedings of the 4th IEEE International Conference on Cloud and Utility Computing (UCC ’11), pp. 138–145, IEEE, Victoria, Australia, December 2011. [12] D. Breitgand and A. Epstein, “SLA-aware placement of multivirtual machine elastic services in compute clouds,” in Proceedings of the IFIP/IEEE International Symposium on Integrated

[15] [16]

[17]

Network Management (IM ’11), pp. 161–168, Dublin, Ireland, May 2011. S. Zaman and D. Grosu, “A combinatorial auction-based mechanism for dynamic VM provisioning and allocation in clouds,” IEEE Transactions on Cloud Computing, vol. 1, no. 2, pp. 129–141, 2013. ¨ ¨ A. H. Ozer and C. Ozturan, “An auction based mathematical model and heuristics for resource co-allocation problem in grids and clouds,” in Proceedings of the 5th International Conference on Soft Computing, Computing with Words and Perceptions in System Analysis, Decision and Control (ICSCCW ’09), pp. 1–4, Famagusta, Cyprus, September 2009. Amazon EC2 Spot Instances, http://aws.amazon.com/ec2/spotinstances/. Y. Choi and Y. Lim, “Resource management mechanism for SLA provisioning on cloud computing for IoT,” in Proceedings of the International Conference on Information and Communication Technology Convergence (ICTC ’15), pp. 500–502, IEEE, Jeju Island, South Korea, October 2015. D. G. Feitelson, “Parallel Workloads Archive,” http://www.cs .huji.ac.il/labs/parallel/workload/logs.html.

International Journal of

Rotating Machinery

Engineering Journal of

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

The Scientific World Journal Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

International Journal of

Distributed Sensor Networks

Journal of

Sensors Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Journal of

Control Science and Engineering

Advances in

Civil Engineering Hindawi Publishing Corporation http://www.hindawi.com

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Volume 2014

Submit your manuscripts at http://www.hindawi.com Journal of

Journal of

Electrical and Computer Engineering

Robotics Hindawi Publishing Corporation http://www.hindawi.com

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Volume 2014

VLSI Design Advances in OptoElectronics

International Journal of

Navigation and Observation Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Hindawi Publishing Corporation http://www.hindawi.com

Chemical Engineering Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Volume 2014

Active and Passive Electronic Components

Antennas and Propagation Hindawi Publishing Corporation http://www.hindawi.com

Aerospace Engineering

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Volume 2014

International Journal of

International Journal of

International Journal of

Modelling & Simulation in Engineering

Volume 2014

Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Shock and Vibration Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014

Advances in

Acoustics and Vibration Hindawi Publishing Corporation http://www.hindawi.com

Volume 2014