AkkaProf: A Profiler for Akka Actors in Parallel and Distributed Applications

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10017)


Nowadays, numerous programming languages and frameworks offer concurrency based on the actor model. Among the actor libraries for the Java Virtual Machine, Akka is the most used one, as it is employed in various parallel and distributed applications and frameworks. Unfortunately, despite the spread of actors libraries, Akka in particular, existing profiling tools are not very effective at identifying performance drawbacks in applications using actors. In this tool paper, we aim at filling this gap by presenting AkkaProf, a profiling tool for Akka actors. AkkaProf provides detailed metrics on actor utilization and on the communication between them, two fundamental aspects of actor-based applications that are overlooked by other profilers. AkkaProf aids performance analysis in several applications and frameworks in both parallel and distributed environments.


Actor model Concurrent applications Parallel and distributed frameworks Profiling tools Performance evaluation and optimization 



This work has been supported by the Swiss National Science Foundation (project 200021_141002) and by the European Commission (contract ACP2-GA-2013-605442).


  1. 1.
    Hewitt, C., Bishop, P., Steiger, R.: A universal modular ACTOR formalism for artificial intelligence. In: IJCAI, pp. 235–245 (1973)Google Scholar
  2. 2.
    Tasharofi, S., Dinges, P., Johnson, R.E.: Why do scala developers mix the actor model with other concurrency models? In: Castagna, G. (ed.) ECOOP 2013. LNCS, vol. 7920, pp. 302–326. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-39038-8_13 CrossRefGoogle Scholar
  3. 3.
    Stutz, P., Bernstein, A., Cohen, W.: Signal/collect: graph algorithms for the (semantic) web. In: Patel-Schneider, P.F., Pan, Y., Hitzler, P., Mika, P., Zhang, L., Pan, J.Z., Horrocks, I., Glimm, B. (eds.) ISWC 2010. LNCS, vol. 6496, pp. 764–780. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-17746-0_48 CrossRefGoogle Scholar
  4. 4.
    Zaharia, M., Chowdhury, M., Das, T., Dave, A., Ma, J., McCauley, M., Franklin, M.J., Shenker, S., Stoica, I.: Resilient distributed datasets: a fault-tolerant abstraction for in-memory cluster computing. In: NSDI, pp. 2:1–2:14 (2012)Google Scholar
  5. 5.
    Apache: Flink. https://flink.apache.org
  6. 6.
  7. 7.
  8. 8.
  9. 9.
  10. 10.
    Bestavros, A.: Load profiling in distributed real-time systems. Inf. Sci. 101, 1–27 (1997)CrossRefGoogle Scholar
  11. 11.
    Vetter, J.: Dynamic statistical profiling of communication activity in distributed applications. In: SIGMETRICS, pp. 240–250 (2002)Google Scholar
  12. 12.
    Marek, L., Villazón, A., Zheng, Y., Ansaloni, D., Binder, W., Qi, Z.: DiSL: a domain-specific language for bytecode instrumentation. In: AOSD, pp. 239–250 (2012)Google Scholar
  13. 13.
    Tallent, N.R., Adhianto, L., Mellor-Crummey, J.M.: Scalable identification of load imbalance in parallel executions using call path profiles. In: SC, pp. 1–11 (2010)Google Scholar
  14. 14.
    Yu, M., Greenberg, A., Maltz, D., Rexford, J., Yuan, L., Kandula, S., Kim, C.: Profiling network performance for multi-tier data center applications. In: NSDI, pp. 57–70 (2011)Google Scholar
  15. 15.
    Fonseca, R., Porter, G., Katz, R.H., Shenker, S., Stoica, I.: X-trace: a pervasive network tracing framework. In: NSDI, pp. 271–284 (2007)Google Scholar
  16. 16.
    Binder, W., Hulaas, J.G., Villazón, A.: Portable resource control in java. In: OOPSLA, pp. 139–155 (2001)Google Scholar
  17. 17.
    Imam, S.M., Sarkar, V.: Savina - an actor benchmark suite: enabling empirical evaluation of actor libraries. In: AGERE!, pp. 67–80 (2014)Google Scholar
  18. 18.
    Backstrom, L., Huttenlocher, D., Kleinberg, J., Lan, X.: Group formation in large social networks: membership, growth, and evolution. In: KDD, pp. 44–54 (2006)Google Scholar
  19. 19.
    Rosà, A., Chen, L.Y., Binder, W.: Profiling actor utilization and communication in Akka. In: Erlang, pp. 1–9 (2016)Google Scholar

Copyright information

© Springer International Publishing AG 2016

Authors and Affiliations

  1. 1.Faculty of InformaticsUniversità della Svizzera Italiana (USI)LuganoSwitzerland
  2. 2.Cloud Server Technologies GroupIBM Research ZurichRüschlikonSwitzerland

Personalised recommendations