Advertisement

A Model-Driven Approach for Software Parallelization

  • Margarete Sackmann
  • Peter Ebraert
  • Dirk Janssens
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7167)

Abstract

In this paper, we describe a model-driven approach that aids the developer in parallelizing a software program. Information from a dynamic call tree, data dependencies and domain knowledge from the developer are combined in a model transformation process. This process leads to a model of the application where it becomes obvious which parts of the application can be executed in parallel.

Keywords

Model Transformation Data Dependency Parallel Model Precedence Relation Call Tree 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Quiñones, C.G., Madriles, C., Sánchez, J., Marcuello, P., González, A., Tullsen, D.M.: Mitosis compiler: An infrastructure for speculative threading based on pre-computation slices. In: 2005 Conference on Programming Language Design and Implementation, PLDI (2005)Google Scholar
  2. 2.
    Steffan, J.G., Colohan, C., Zhai, A., Mowry, T.C.: The STAMPede Approach to Thread-Level Speculation. Transactions on Computer Science (2005)Google Scholar
  3. 3.
    Chen, M.K., Olukotun, K.: The Jrpm System for Dynamically Parallelizing Java Programs. In: 30th Annual International Symposium on Computer Architecture (ISCA 2003) (2003)Google Scholar
  4. 4.
    Mak, J., Faxén, K.-F., Janson, S., Mycroft, A.: Estimating and Exploiting Potential Parallelism by Source-Level Dependence Profiling. In: D’Ambra, P., Guarracino, M., Talia, D. (eds.) Euro-Par 2010. LNCS, vol. 6271, pp. 26–37. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  5. 5.
    Ishihara, M., Honda, K., Sato, M.: Development and Implementation of an Interactive Parallelization Assistance Tool for OpenMP:iPat/OMP. IEICE Transactions on Information and Systems (2006)Google Scholar
  6. 6.
    Assayad, I., Bertin, V., Defaut, F.-X., Gerner, P., Quévreux, O., Yovine, S.: Jahuel: A Formal Framework for Software Synthesis. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 204–218. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  7. 7.
    Stefanov, T., Zissulescu, C., Turjan, A., Kienhuis, B., Deprettere, E.: System design using kahn process networks: The compaan/laura approach. In: Proceedings of the Conference on Design, Automation and Test in Europe (DATE) (204)Google Scholar
  8. 8.
    Guthaus, M.R., Ringenberg, J.S., Ernst, D., Austin, T.M., Mudge, T., Brown, R.B.: Mibench: A free, commercially representative embedded benchmark suite. In: Proceedings of the Workload Characterization 2001 Workshop (2001)Google Scholar
  9. 9.
    Tournavitis, G., Wang, Z., Franke, B., O’Boyle, M.F.: Towards a holistic approach to auto-parallelization. In: 2009 Conference on Programming Language Design and Implementation (PLDI) (2009)Google Scholar
  10. 10.
    Miniskar, N.R., Hammari, E., Munaga, S., Mamagkakis, S., Kjeldsberg, P.G., Catthoor, F.: Scenario based mapping of dynamic applications on mpsoc: A 3d graphics case study. In: SAMOS Proceedings of the 9th International Workshop on Embedded Computer Systems: Architectures, Modeling and Simulation (2009)Google Scholar
  11. 11.
    Vandierendonck, H., Rul, S., de Bosschere, K.: The paralax infrastructure: Automatic parallelization with a helping hand. In: Parallel Architectures and Compilation Techniques (PACT) (2010)Google Scholar
  12. 12.
    de Lara, J., Vangheluwe, H.: Using AToM3 as a Meta-CASE Tool. In: 4th International Conference on Enterprise Information Systems (ICEIS 2002) (2002)Google Scholar
  13. 13.
    Weisendorfer, J., Kowarschik, M., Trinitis, C.: A tool suite for simulation based analysis of memory access behavior. In: Proc. of the 4th Int. Conference on Computational Science (ICCS 2004) (2004)Google Scholar
  14. 14.
    Nethercote, N., Seward, J.: Valgrind: A framework for heavyweight dynamic binary instructions. In: Proc. of ACM SIGPLAN 2007 Conference on Programming Language and Design (PLDI 2007) (2007)Google Scholar
  15. 15.
    Chapman, B., Jost, G., van der Pas, R.: Using OpenMP. The MIT Press (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Margarete Sackmann
    • 1
  • Peter Ebraert
    • 1
  • Dirk Janssens
    • 1
  1. 1.Universiteit AntwerpenBelgium

Personalised recommendations