Parallelisation of Sequential Programs by Invasive Composition and Aspect Weaving

  • Mikhail Chalabine
  • Christoph Kessler
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3756)


We propose a new method of interactively parallelising programs that is based on aspect weaving and invasive software composition. This can be seen as an alternative to skeleton programming. We give motivating examples for how our method could be applied.


Sequential Program Intermediate Representation Abstract Syntax Tree Concern Model Automatic Parallelisation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aßmann, U. (ed.): Invasive Software Composition. Springer, Heidelberg (2003)zbMATHGoogle Scholar
  2. 2.
    Ceccato, M., Tonella, P.: Adding distribution to existing applications by means of aspect oriented programming. In: 4th IEEE International Workshop on Source Code Analysis and Manipulation (2004)Google Scholar
  3. 3.
    Chalabine, M., Kessler, C., Wiklund, S.: Optimising intensive interprocess communication in a parallelised telecommunication traffic simulator. In: Proc. Int. High-Performance Computing Symposium (part of the Advanced Simulation Technology Conference), Orlando, Florida, USA (2003)Google Scholar
  4. 4.
    Chandra, R., Dagum, L., Kohr, D., Maydan, D., McDonald, J., Menon, R.: Parallel Programming in OpenMP (2001)Google Scholar
  5. 5.
    Cole, M. (ed.): Algorithmic Skeletons: A Structured Approach to the Management of Parallel Computation. MIT Press, Cambridge (1989)Google Scholar
  6. 6.
    di Martino, B., Keßler, C.W.: Two program comprehension tools for automatic parallelization. IEEE Concurrency 8(1 (Spring), 37–47 (2000)CrossRefGoogle Scholar
  7. 7.
    Griebl, M.: Automatic Parallelization of Loop Programs for Distributed Memory Architectures. Habilitation thesis, University of Passau, Germany (2004)Google Scholar
  8. 8.
    Herrmann, C.A., Lengauer, C.: HDC: A higher-order language for divide-and-conquer. Parallel Processing Letters 10(2/3), 239–250 (2000)CrossRefGoogle Scholar
  9. 9.
    Holmes, D., Noble, J., Potter, J.: Aspects of Synchronisation. In: Proceedings of TOOLS-25’97. IEEE, Los Alamitos (1997)Google Scholar
  10. 10.
    Kennedy, K., Allen, J.R. (eds.): Optimizing compilers for modern architectures: a dependence-based approach. Morgan Kaufmann Publishers Inc., San Francisco (2002)Google Scholar
  11. 11.
    Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Videira Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  12. 12.
    Kuchen, H.: A skeleton library. In: Monien, B., Feldmann, R.L. (eds.) Euro-Par 2002. LNCS, vol. 2400, pp. 620–629. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  13. 13.
    Marr, M.I., Cole, M.: Hierarchical skeletons and ”ad hoc” parallelism. In: Parallel Computing: State-of-the-Art and Perspectives, vol. 11, Elsevier, AmsterdamGoogle Scholar
  14. 14.
    Marr, M.I.: PhD dissertation: Descriptive Simplicity in Parallel Computing. University of Edinburgh (1997)Google Scholar
  15. 15.
    Pelagatti, S.: Structured development of parallel programs. Taylor & Francis, Abington (1997)Google Scholar
  16. 16.
    Pressman, R.: Software Engineering: A Practitioner’s Approach. McGraw-Hill, New York (1992)Google Scholar
  17. 17.
    Rabhi, F.A., Gorlatch, S.: Patterns and Skeletons for Parallel and Distributed Computing. Springer, Heidelberg (2002)Google Scholar
  18. 18.
    Ramirez, R., Santosa, A.E.: An aspect-oriented framework for concurrent applications. In: Proc. of the 3rd German Workshop on Aspect Oriented Software Development, Essen, Germany. German Informatics Society (2003)Google Scholar
  19. 19.
    Südholt, M.: The Transformational Derivation of Parallel Programs using Data Distribution Algebras and Skeletons. PhD thesisGoogle Scholar
  20. 20.
    Zima, H., Chapman, B.: Supercompilers for parallel and vector computers. ACM Press, New York (1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Mikhail Chalabine
    • 1
  • Christoph Kessler
    • 1
  1. 1.Programming Environments Laboratory, Dept. of Computer and Information ScienceLinköping UniversityLinköpingSweden

Personalised recommendations