Skip to main content

Using Choreography of Actors and Rewriting Rules to Adapt Legacy Fortran Programs to Cloud Computing

  • Conference paper
  • First Online:
Information and Communication Technologies in Education, Research, and Industrial Applications (ICTERI 2016)

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. PGI Compilers & Tools. http://www.pgroup.com/products/pvf.htm

  2. High Performance. http://hpff.rice.edu

  3. 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

  4. Coarrays in the next Fortran Standard. ftp://ftp.nag.co.uk/sc22wg5/N1751-N1800/N1787.pdf

    Google Scholar 

  5. Netlib Repository. http://netlib.org

  6. 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)

    Google Scholar 

  7. 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

    Chapter  Google Scholar 

  8. Doroshenko, A., Khavryuchenko, V., Iegorov, V., Suslova, L.: Modeling for quantum chemistry computations (in Russian). Upravliayushchie Sistemy i Mashiny 5, 83–87 (2012)

    Google Scholar 

  9. Doroshenko, A., Shevchenko, R.: A rewriting framework for rule-based programming dynamic applications. Fundam. Inf. 72, 95–108 (2006)

    MATH  Google Scholar 

  10. Tulika, E., Zhereb, K., Doroshenko, A.: Fortran programs parallelization using rewriting rules technique (in Ukrainian). Prob. Program. 2–3, 388–397 (2012)

    Google Scholar 

  11. Tulika, E.: Performance optimization in SOA using load estimation and load balancing (in Ukrainian). Prob. Program. 2–3, 193–201 (2010)

    Google Scholar 

  12. 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)

    Article  Google Scholar 

  13. Peltz, C.: Web services orchestration and choreography. Computer 36, 46–52 (2003)

    Article  Google Scholar 

  14. Golub, G.H., Ortega, J.M.: Scientific Computing: An Introduction with Parallel Computing. Elsevier, Amsterdam (2014)

    MATH  Google Scholar 

  15. 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)

    Google Scholar 

  16. Barker, A., Walton, C.D., Robertson, D.: Choreographing web services. IEEE Trans. Serv. Comput. 2, 152–166 (2009)

    Article  Google Scholar 

  17. 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

    Chapter  Google Scholar 

  18. Kshemkalyani, A.D., Singhal, M.: Distributed Computing: Principles, Algorithms, and Systems. Cambridge University Press, Cambridge (2011)

    MATH  Google Scholar 

  19. 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

    Chapter  Google Scholar 

  20. Demmely, J.W., Highamz, N.J., Schreiberx, R.S.: Block LU Factorization (1992)

    Google Scholar 

  21. Choi, J., et al.: Design and implementation of the ScaLAPACK LU, QR, and Cholesky factorization routines. Scientific Programming. 5, 173–184 (1996)

    Article  Google Scholar 

  22. Jamshidi, P., Ahmad, A., Pahl, C.: Cloud migration research: a systematic review. IEEE Trans. Cloud Comput. 1, 142–157 (2013)

    Article  Google Scholar 

  23. 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)

    Google Scholar 

  24. 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

    Chapter  Google Scholar 

  25. 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)

    Google Scholar 

  26. 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)

    Google Scholar 

  27. Plóciennik, M., et al.: Approaches to distributed execution of scientific workflows in Kepler. Fundam. Inf. 128, 281–302 (2013)

    Google Scholar 

  28. 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

    Google Scholar 

  29. 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)

    Google Scholar 

  30. 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

    Google Scholar 

  31. 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

    Chapter  Google Scholar 

  32. 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)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Eugene Tulika .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

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)

Publish with us

Policies and ethics