Skip to main content

Towards Type-Based Optimizations in Distributed Applications Using ABS and JAVA 8

  • Conference paper
  • First Online:
Adaptive Resource Management and Scheduling for Cloud Computing (ARMS-CC 2014)

Abstract

In this paper we present an API to support modeling applications with Actors based on the paradigm of the Abstract Behavioural Specification (ABS) language. With the introduction of JAVA 8, we expose this API through a JAVA library to allow for a high-level actor-based methodology for programming distributed systems which supports the programming to interfaces discipline. We validate this solution through a case study where we obtain significant performance improvements as well as illustrating the ease with which simple high and low-level optimizations can be obtained by examining topologies and communication within an application. Using this API we show it is much easier to observe drawbacks of shared data-structures and communications methods in the design phase of a distributed application and apply the necessary corrections in order to obtain better results.

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. Armstrong, J., Virding, R., Wikström, C., Williams, M.: Concurrent Programming in Erlang. Morgan Kaufmann, San Francisco (1993)

    MATH  Google Scholar 

  2. Balbaert, I.: The Way to Go: A Thorough Introduction to the Go Programming Language. IUniverse, Bloomington (2012)

    Google Scholar 

  3. Bokhari, S.H.: Multiprocessing the sieve of Eratosthenes. Computer 20(4), 50–58 (1987)

    Article  Google Scholar 

  4. Cheong, E., Lee, E.A., Zhao, Y.: Viptos: a graphical development and simulation environment for TinyOS-based wireless sensor networks. In: SenSys, vol. 5, pp. 302–302 (2005)

    Google Scholar 

  5. Geoffray, N., Thomas, G., Folliot, B., Clément, C.: Towards a new isolation abstraction for OSGi. In: Proceedings of the 1st Workshop on Isolation and Integration in Embedded Systems, pp. 41–45. ACM (2008)

    Google Scholar 

  6. Gropp, W., Lusk, E., Skjellum, A.: Using MPI: Portable Parallel Programming with the Message-passing Interface, vol. 1. MIT press, Cambridge (1999)

    Google Scholar 

  7. Haller, P.: On the integration of the actor model in mainstream technologies: the scala perspective. In: Proceedings of the 2nd edition on Programming Systems, Languages and Applications Based on Actors, Agents, and Decentralized Control Abstractions, pp. 1–6. ACM (2012)

    Google Scholar 

  8. Haller, P., Odersky, M.: Scala actors: unifying thread-based and event-based programming. Theor. Comput. Sci. 410(2), 202–220 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  9. Hewitt, C.: Procedural embedding of knowledge in planner. In: IJCAI, pp. 167–184 (1971)

    Google Scholar 

  10. Imam, S.M., Sarkar, V.: Integrating task parallelism with actors. In: ACM SIGPLAN Notices, vol. 47, pp. 753–772. ACM (2012)

    Google Scholar 

  11. Johnsen, E.B., Hähnle, R., Schäfer, J., Schlatte, R., Steffen, M.: ABS: a core language for abstract behavioral specification. In: Aichernig, B.K., de Boer, F.S., Bonsangue, M.M. (eds.) Formal Methods for Components and Objects. LNCS, vol. 6957, pp. 142–164. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  12. Karmani, R.K., Shali, A., Agha, G.: Actor frameworks for the JVM platform: a comparative analysis. In: Proceedings of the 7th International Conference on Principles and Practice of Programming in Java, pp. 11–20. ACM (2009)

    Google Scholar 

  13. https://surfsara.nl/

  14. Nicolae, B., Antoniu, G., Bougé, L., Moise, D., Carpen-Amarie, A.: Blobseer: next-generation data management for large scale infrastructures. J. Parallel Distrib. Comput. 71, 169–184 (2011). http://dx.doi.org/10.1016/j.jpdc.2010.08.004

    Article  Google Scholar 

  15. Nobakht, B., de Boer, F.S.: Programming with actors in Java 8. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014, Part II. LNCS, vol. 8803, pp. 37–53. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  16. O’Neill, M.E.: The genuine sieve of Eratosthenes. J. Funct. Program. 19(01), 95–106 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  17. Pierre, G., Stratan, C.: ConPaaS: a platform for hosting elastic cloud applications. IEEE Internet Comput. 16(5), 88–92 (2012)

    Article  Google Scholar 

  18. Pop, F., Dobre, C., Cristea, V.: Evaluation of multi-objective decentralized scheduling for applications in grid environment. In: Proceedings of 2008 IEEE 4th International Conference on Intelligent Computer Communication and Processing, pp. 231–238. IEEE Computer Society, Cluj-Napoca, Romania (2008). ISBN: 978-1-4244-2673-7

    Google Scholar 

  19. Serbanescu, V.N., Pop, F., Cristea, V., Achim, O.M.: Web services allocation guided by reputation in distributed SOA-based environments. In: 2012 11th International Symposium on Parallel and Distributed Computing (ISPDC), pp. 127–134. IEEE (2012)

    Google Scholar 

  20. Sieve, F.: http://primesieve.org

  21. Tasharofi, S.: Efficient testing of actor programs with non-deterministic behaviors. Ph.D. thesis, University of Illinois at Urbana-Champaign (2014)

    Google Scholar 

  22. http://heuristic-fencepost.blogspot.nl/2012/02/ruby-and-concurrency-maintaining-purity.html

  23. http://absurdfarce.github.io/blog/2012/01/05/ruby-and-concurrency-design-with-actorsandakka/

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vlad Serbanescu .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Serbanescu, V., Nagarajagowda, C., Azadbakht, K., de Boer, F., Nobakht, B. (2014). Towards Type-Based Optimizations in Distributed Applications Using ABS and JAVA 8. In: Pop, F., Potop-Butucaru, M. (eds) Adaptive Resource Management and Scheduling for Cloud Computing. ARMS-CC 2014. Lecture Notes in Computer Science(), vol 8907. Springer, Cham. https://doi.org/10.1007/978-3-319-13464-2_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-13464-2_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-13463-5

  • Online ISBN: 978-3-319-13464-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics