Abstract
We propose an approach to the semi-automatic transformation of legacy Fortran applications for execution on cloud computing platforms. The architecture is based on the choreography concept implemented as actor model, which allows to improve the scalability of the system and reduces overhead on message passing. The rewriting rules technique is used to formally define certain transformation steps. The approach is tested on an example program from the quantum chemistry field. The main contribution of this chapter is (1) using rewriting rules technique to automate transformation steps and (2) using service choreography to optimize resource allocation on the cloud.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
PGI Compilers & Tools. http://www.pgroup.com/products/pvf.htm
High Performance. http://hpff.rice.edu
Fortran is more popular than ever; Intel makes it fast. https://software.intel.com/en-us/blogs/2011/09/24/fortran-is-more-popular-than-ever-intel-makes-it-fast
Coarrays in the next Fortran Standard. ftp://ftp.nag.co.uk/sc22wg5/N1751-N1800/N1787.pdf
Netlib Repository. http://netlib.org
Müller, S.C., Alonso, G., Amara, A., Csillaghy, A.: Pydron: semi-automatic parallelization for multi-core and the cloud. In: 11th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2014), pp. 645–659 (2014)
Karlsson, T.J.M., Tirado, Ó.T., Ramet, D., Lago, J., Cano, J.F., Chelbat, N., Trelles, O.: Bio-Cirrus: a framework for running legacy bioinformatics applications with cloud computing resources. In: Rojas, I., Joya, G., Cabestany, J. (eds.) IWANN 2013. LNCS, vol. 7903, pp. 200–207. Springer, Heidelberg (2013). doi:10.1007/978-3-642-38682-4_23
Doroshenko, A., Khavryuchenko, V., Iegorov, V., Suslova, L.: Modeling for quantum chemistry computations (in Russian). Upravliayushchie Sistemy i Mashiny 5, 83–87 (2012)
Doroshenko, A., Shevchenko, R.: A rewriting framework for rule-based programming dynamic applications. Fundam. Inf. 72, 95–108 (2006)
Tulika, E., Zhereb, K., Doroshenko, A.: Fortran programs parallelization using rewriting rules technique (in Ukrainian). Prob. Program. 2–3, 388–397 (2012)
Tulika, E.: Performance optimization in SOA using load estimation and load balancing (in Ukrainian). Prob. Program. 2–3, 193–201 (2010)
Barker, A., Weissman, J.B., van Hemert, J.I.: Reducing data transfer in service-oriented architectures: the circulate approach. IEEE Trans. Serv. Comput. 5, 437–449 (2012)
Peltz, C.: Web services orchestration and choreography. Computer 36, 46–52 (2003)
Golub, G.H., Ortega, J.M.: Scientific Computing: An Introduction with Parallel Computing. Elsevier, Amsterdam (2014)
Schelter, S., et al.: Distributed matrix factorization with MapReduce using a series of broadcast-joins. In: Proceedings of the 7th ACM Conference on Recommender Systems, pp. 281–284. ACM (2013)
Barker, A., Walton, C.D., Robertson, D.: Choreographing web services. IEEE Trans. Serv. Comput. 2, 152–166 (2009)
Gaspari, M., Zavattaro, G.: An algebra of actors. In: Ciancarini, P., Fantechi, A., Gorrieri, R. (eds.) FMOODS 1999. ITIFIP, vol. 10, pp. 3–18. Springer, Boston, MA (1999). doi:10.1007/978-0-387-35562-7_2
Kshemkalyani, A.D., Singhal, M.: Distributed Computing: Principles, Algorithms, and Systems. Cambridge University Press, Cambridge (2011)
Su, J., Bultan, T., Fu, X., Zhao, X.: Towards a theory of web service choreographies. In: Dumas, M., Heckel, R. (eds.) WS-FM 2007. LNCS, vol. 4937, pp. 1–16. Springer, Heidelberg (2008). doi:10.1007/978-3-540-79230-7_1
Demmely, J.W., Highamz, N.J., Schreiberx, R.S.: Block LU Factorization (1992)
Choi, J., et al.: Design and implementation of the ScaLAPACK LU, QR, and Cholesky factorization routines. Scientific Programming. 5, 173–184 (1996)
Jamshidi, P., Ahmad, A., Pahl, C.: Cloud migration research: a systematic review. IEEE Trans. Cloud Comput. 1, 142–157 (2013)
Beserra, P.V., et al.: Cloudstep: a step-by-step decision process to support legacy application migration to the cloud. In: 2012 IEEE 6th International Workshop on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems (MESOCA), pp. 7–16. IEEE (2012)
Andrikopoulos, V., Darsow, A., Karastoyanova, D., Leymann, F.: CloudDSF – the cloud decision support framework for application migration. In: Villari, M., Zimmermann, W., Lau, K.-K. (eds.) ESOCC 2014. LNCS, vol. 8745, pp. 1–16. Springer, Heidelberg (2014). doi:10.1007/978-3-662-44879-3_1
Menzel, M., Ranjan, R.: CloudGenius: decision support for web server cloud migration. In: Proceedings of the 21st International Conference on World Wide Web, pp. 979–988. ACM (2012)
Frey, S., Hasselbring, W.: The CloudMIG approach: model-based migration of software systems to cloud-optimized applications. Int. J. Adv. Softw. 4, 342–353 (2011)
Plóciennik, M., et al.: Approaches to distributed execution of scientific workflows in Kepler. Fundam. Inf. 128, 281–302 (2013)
Bergenti, F., Poggi, A., Tomaiuolo, M.: An actor based software framework for scalable applications. In: Fortino, G., Di Fatta, G., Li, W., Ochoa, S., Cuzzocrea, A., Pathan, M. (eds.) IDCS 2014. LNCS, vol. 8729, pp. 26–35. Springer, Cham (2014). doi:10.1007/978-3-319-11692-1_3
Wavresky, F., Lee, S.-W.: A methodology towards the adaptization of legacy systems using agent-oriented software engineering. In: Proceedings of the 31st Annual ACM Symposium on Applied Computing, pp. 1407–1414. ACM (2016)
Doroshenko, A., Zhereb, K., Yatsenko, O.: Developing and optimizing parallel programs with algebra-algorithmic and term rewriting tools. In: Ermolayev, V., Mayr, H.C., Nikitchenko, M., Spivakovsky, A., Zholtkevych, G. (eds.) ICTERI 2013. CCIS, vol. 412, pp. 70–92. Springer, Cham (2013). doi:10.1007/978-3-319-03998-5_5
Doroshenko, A., Zhereb, K.: Parallelizing legacy fortran programs using rewriting rules technique and algebraic program models. In: Ermolayev, V., Mayr, H.C., Nikitchenko, M., Spivakovsky, A., Zholtkevych, G. (eds.) ICTERI 2012. CCIS, vol. 347, pp. 39–59. Springer, Heidelberg (2013). doi:10.1007/978-3-642-35737-4_3
Doroshenko, A., Khavryuchenko, V., Tulika, E., Zhereb, K.: Transformation of the legacy code on Fortran for scalability and cloud computing (in Ukrainian). In: 10th International Conference of Programming UkrPROG 2016, pp. 133–140. CEUR-WS (2016)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Tulika, E., Doroshenko, A., Zhereb, K. (2017). Using Choreography of Actors and Rewriting Rules to Adapt Legacy Fortran Programs to Cloud Computing. In: Ginige, A., et al. Information and Communication Technologies in Education, Research, and Industrial Applications. ICTERI 2016. Communications in Computer and Information Science, vol 783. Springer, Cham. https://doi.org/10.1007/978-3-319-69965-3_5
Download citation
DOI: https://doi.org/10.1007/978-3-319-69965-3_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-69964-6
Online ISBN: 978-3-319-69965-3
eBook Packages: Computer ScienceComputer Science (R0)