Abstract
In this paper, we deal with optimizing the monetary costs of executing parallel applications in cloud-based environments. Specifically, we investigate on how scalability characteristics of parallel applications impact the total costs of computations. We focus on a specific class of irregularly structured problems, where the scalability typically depends on the input data. Consequently, dynamic optimization methods are required for minimizing the costs of computation. For quantifying the total monetary costs of individual parallel computations, the paper presents a cost model that considers the costs for the parallel infrastructure employed as well as the costs caused by delayed results. We discuss a method for dynamically finding the number of processors for which the total costs based on our cost model are minimal. Our extensive experimental evaluation gives detailed insights into the performance characteristics of our approach.
Similar content being viewed by others
References
Amazon EC2 Pricing: https://aws.amazon.com/en/ec2/pricing/on-demand/
Anbar, A., Narayana, V.K., El-Ghazawi, T.: Distributed shared memory programming in the cloud. In: Proceedings of the 12th International Symposium on Cluster, Cloud and Grid Computing, CCGRID, pp. 707–708. IEEE/ACM, Washington, DC, USA (2012). https://doi.org/10.1109/CCGrid.2012.48
Availability of H-series VMs in Microsoft Azure: https://azure.microsoft.com/en-us/blog/availability-of-h-series-vms-in-microsoft-azure/
Berenbrink, P., Friedetzky, T., Goldberg, L.A.: The natural work-stealing algorithm is stable. In: Proceedings of the International Conference on Cluster Computing, pp. 178–187. IEEE (2001). https://doi.org/10.1109/SFCS.2001.959892
Blochinger, W.: Towards robustness in parallel SAT solving. In: PARCO, pp. 301–308 (2005)
Blochinger, W., Sinz, C., Küchlin, W.: Parallel propositional satisfiability checking with distributed dynamic learning. Parallel Comput. 29(7), 969–994 (2003). https://doi.org/10.1016/S0167-8191(03)00068-1
Blochinger, W., Dangelmayr, C., Schulz, S.: Aspect-oriented parallel discrete optimization on the cohesion desktop grid platform. In: Proceedings of the 6th Symposium on Cluster Computing and the Grid, CCGRID, pp. 49–56. IEEE (2006). https://doi.org/10.1109/CCGRID.2006.20
Bonet, B., Geffner, H.: Planning as heuristic search. Artif. Intell. 129(1–2), 5–33 (2001). https://doi.org/10.1016/S0004-3702(01)00108-4
Carreno, E.D., Diener, M., Cruz, E.H.M., Navaux, P.O.A.: Automatic communication optimization of parallel applications in public clouds. In: Proceedings of the 16th International Symposium on Cluster, Cloud and Grid Computing, CCGRID, pp. 1–10. IEEE/ACM (2016). https://doi.org/10.1109/ccgrid.2016.59
Da Rosa Righi, R., Rodrigues, V.F., Da Costa, C.A., Galante, G., De Bona, L.C.E., Ferreto, T.: AutoElastic: automatic resource elasticity for high performance applications in the cloud. IEEE Trans. Cloud Comput. 4(1), 6–19 (2016). https://doi.org/10.1109/TCC.2015.2424876
Da Rosa Righi, R., Rodrigues, V.F., Rostirolla, G., Da Costa, C.A., Roloff, E., Navaux, P.O.A.: A lightweight plug-and-play elasticity service for self-organizing resource provisioning on parallel applications. Fut. Gen. Comput. Syst. 78(1), 176–190 (2018). https://doi.org/10.1016/j.future.2017.02.023
Deelman, E., Singh, G., Livny, M., Berriman, B., Good, J.: The cost of doing science on the cloud: the montage example. In: Proceedings of the Conference on Supercomputing, SC ’09, p. 50. ACM/IEEE (2008). https://doi.org/10.1109/SC.2008.5217932
Dorigo, M., Caro, G.D., Gambardella, L.M.: Ant algorithms for discrete optimization. Artif. Life 5(2), 137–172 (1999). https://doi.org/10.1162/106454699568728
Edelkamp, S., Schroedl, S.: Heuristic Search: Theory and Applications. Elsevier, Amsterdam (2012). https://doi.org/10.1016/B978-0-12-372512-7.00019-5
Ekanayake, J., Jackson, J., Lu, W., Barga, R., Balkir, A.S.: A scalable communication runtime for clouds. In: Proceedings of the 4th International Conference on Cloud Computing, CLOUD, pp. 211–218. IEEE (2011). https://doi.org/10.1109/CLOUD.2011.21
Evangelinos, C., Hill, C.N.: Cloud computing for parallel scientific HPC applications: feasibility of running coupled atmosphere-ocean climate models on Amazons EC2. In: 1st Workshop on Cloud Computing and its Applications, CCA, vol. 2, pp. 2–34 (2008)
Fokaefs, M., Barna, C., Litoiu, M.: Economics-driven resource scalability on the cloud. In: Proceedings of the 11th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS, pp. 129–139. ACM Press, New York, USA (2016).
Genaud, S., Gossa, J.: Cost-wait trade-offs in client-side resource provisioning with elastic clouds. In: Proceedings of the 4th International Conference on Cloud Computing, CLOUD, pp. 1–8. IEEE, Washington, DC, USA (2011). https://doi.org/10.1109/CLOUD.2011.23
Gholkar, N., Mueller, F., Rountree, B.: A power-aware cost model for HPC procurement. In: Proceedings of the 30th International Symposium on Parallel and Distributed Processing, IPDPSW, pp. 1110–1113. IEEE (2016). https://doi.org/10.1109/IPDPSW.2016.35
Google Cloud Platform—Compute Engine (2014). https://cloud.google.com/compute/
Grama, A., Kumar, V.: State of the art in parallel search techniques for discrete optimization problems. IEEE Trans. Knowl. Data Eng. 11(1), 28–35 (1999). https://doi.org/10.1109/69.755612
Grama, A., Kumar, V., Karypis, G., Gupta, A.: Introduction to Parallel Computing, 2nd edn. Addison-Wesley Longman Publishing Co., Inc, Boston (2003)
Gupta, A., Milojicic, D.: Evaluation of HPC applications on cloud. In: Proceedings of the 6th Open Cirrus Summit, OCS, pp. 22–26. IEEE (2011). https://doi.org/10.1109/OCS.2011.10
Hansen, E.A., Zilberstein, S.: LAO*: a heuristic search algorithm that finds solutions with loops. Artif. Intell. 129(1–2), 35–62 (2001). https://doi.org/10.1016/S0004-3702(01)00106-0
Henderson, D.R.: The Concise Encyclopedia of Economics. Liberty Fund, Indianapolis (2007)
Jackson, K., Ramakrishnan, L., Muriki, K., Canon, S., Cholia, S., Shalf, J., Wasserman, H.J., Wright, N.J.: Performance analysis of high performance computing applications on the Amazon Web Services Cloud. In: Proceedings of the 2nd International Conference on Cloud Computing Technology and Science, CLOUDCOM, pp. 159–168. IEEE (2010). https://doi.org/10.1109/CloudCom.2010.69
Janjic, V., Hammond, K.: Using load information in work-stealing on distributed systems with non-uniform communication latencies. In: Proceedings of the 18th European Conference on Parallel Processing, Euro-Par, pp. 155–166. Springer (2012). https://doi.org/10.1007/978-3-642-32820-6_17
Kang, D.K., Kim, S.H., Youn, C.H., Chen, M.: Cost adaptive workflow scheduling in cloud computing. In: Proceedings of the 8th International Conference on Ubiquitous Information Management and Communication, ICUIMC, pp. 1–8. ACM, New York, USA (2014). https://doi.org/10.1145/2557977.2558079
Kiefer, J.: Sequential minimax search for a maximum. Proc. Am. Math. Soc. 4(3), 502–506 (1953). https://doi.org/10.2307/2032161
Mao, M., Humphrey, M.: Auto-scaling to minimize cost and meet application deadlines in cloud workflows. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, SC, pp. 1–12. IEEE (2011). https://doi.org/10.1145/2063384.2063449
Mao, M., Humphrey, M.: Scaling and scheduling to maximize application performance within budget constraints in cloud workflows. In: Proceedings of the 27th International Symposium on Parallel and Distributed Processing, IPDPS, pp. 67–78. IEEE (2013). https://doi.org/10.1109/IPDPS.2013.61
Mao, M., Li, J., Humphrey, M.: Cloud auto-scaling with deadline and budget constraints. In: Proceedings of the 11th International Conference on Grid Computing, GRID, pp. 41–48. IEEE/ACM (2010). https://doi.org/10.1109/GRID.2010.5697966
Marques-Silva, J.P., Sakallah, K.A.: Dynamic search-space pruning techniques in path sensitization. In: Proceedings of the 31st Design Automation Conference, DAC, pp. 705–711. ACM, New York, USA (1994). https://doi.org/10.1109/DAC.1994.204192
Marques-Silva, J.P., Sakallah, K.A.: Boolean satisifiability in electronic design automation. In: Proceedings of the 37th Design Automation Conference, DAC, pp. 675–680. ACM Press, New York, USA (2000). https://doi.org/10.1145/337292.337611
Mauch, V., Kunze, M., Hillenbrand, M.: High performance cloud computing. Fut. Gen. Comput. Syst. 29(6), 1408–1416 (2013). https://doi.org/10.1016/j.future.2012.03.011
Messac, A., Puemi-Sukam, C., Melachrinoudis, E.: Aggregate objective functions and pareto frontiers: required relationships and practical implications. Optim. Eng. 1(2), 171–188 (2000). https://doi.org/10.1023/A:1010035730904
Min, S., Iancu, C., Yelick, K.: Hierarchical work stealing on manycore clusters. In: Proceedings of the 5th Conference on Partitioned Global Address Space Programming Models, PGAS, pp. 1–10 (2011).
Nguyen, T.V.A., Bimonte, S., D’Orazio, L., Darmont, J.: Cost models for view materialization in the cloud. In: Proceedings of the 15th Joint EDBT/ICDT Workshop, pp. 47–54. ACM, New York, USA (2012). https://doi.org/10.1145/2320765.2320788
OpenStack OpenSource Community: OpenStack Project (2013). https://www.openstack.org/
OpenStack4j: http://www.openstack4j.com/
Quintin, J.N., Wagner, F.: Hierarchical work-stealing. In: Proceedings of the 16th European Conference on Parallel Processing, Euro-Par, pp. 217–229. Springer (2010). https://doi.org/10.1007/978-3-642-15277-1_21
Rajan, D., Thain, D.: Designing self-tuning split-map-merge applications for high cost-efficiency in the cloud. IEEE Trans. Cloud Comput. 5(2), 303–316 (2017). https://doi.org/10.1109/TCC.2015.2415780
Righi, RdR, Rodrigues, V.F., da Costa, C.A., Kreutz, D., Heiss, H.U.: Towards cloud-based asynchronous elasticity for iterative HPC applications. J. Phys. Conf. Ser. 649, 012006 (2015). https://doi.org/10.1088/1742-6596/649/1/012006
Schulz, S., Blochinger, W.: Parallel SAT solving on peer-to-peer desktop grids. J. Grid Comput. 8(3), 443–471 (2010). https://doi.org/10.1007/s10723-010-9160-1
Sharma, U., Shenoy, P., Sahu, S., Shaikh, A.: A cost-aware elasticity provisioning system for the cloud. In: Proceedings of the 31st International Conference on Distributed Computing Systems, pp. 559–570. IEEE (2011). https://doi.org/10.1109/ICDCS.2011.59
Sun, Y., Wang, C.L.: Solving irregularly structured problems based on distributed object model. Parallel Comput. 29(11–12), 1539–1562 (2003). https://doi.org/10.1016/j.parco.2003.05.006
TSPLIB95—Library of Sample Instances for the TSP: https://www.iwr.uni-heidelberg.de/groups/comopt/software/TSPLIB95/
van Nieuwpoort, R.V., Kielmann, T., Bal, H.E.: Efficient load balancing for wide-area divide-and-conquer applications. In: Proceedings of the 8th ACM SIGPLAN Symposium on Principles and Practices of Parallel Programming, PPoPP, vol. 36, pp. 34–43. ACM (2001). https://doi.org/10.1145/568014.379563
Viana, V., De Oliveira, D., Mattoso, M.: Towards a cost model for scheduling scientific workflows activities in cloud environments. In: Proceedings of the World Congress on Services, SERVICES, pp. 216–219. IEEE (2011). https://doi.org/10.1109/SERVICES.2011.52
Vu, T.T., Derbel, B.: Link-heterogeneous work stealing. In: Proceedings of the 14th International Symposium on Cluster, Cloud, and Grid Computing, CCGrid, pp. 354–363. IEEE/ACM (2014). https://doi.org/10.1109/CCGrid.2014.85
Wu, C., Buyya, R.: Cloud Data Centers and Cost Modeling—A Complete Guide to Planning, Designing and Building a Cloud Data Center, 1st edn. Elsevier, San Francisco (2015)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Haussmann, J., Blochinger, W. & Kuechlin, W. Cost-efficient parallel processing of irregularly structured problems in cloud computing environments. Cluster Comput 22, 887–909 (2019). https://doi.org/10.1007/s10586-018-2879-3
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-018-2879-3