skip to main content
10.1145/2553062.2553066acmotherconferencesArticle/Chapter ViewAbstractPublication PagesadaptConference Proceedingsconference-collections
research-article

A Self-tuning Scientific Framework using Model-Driven Engineering for Heterogeneous Execution Platforms

Published:22 January 2014Publication History

ABSTRACT

This article presents an ongoing work towards the extension of Sm@rtConfig -- a dynamic scheduling tool with self-tuning load-balancing functionalities targeting CPUs, GPUs, and other co-processors. This extension is based on the introduction of a high-level modeling phase for scientific applications. These applications are commonly complex, use (heterogeneous) high performance execution platforms, and require stakeholders of several disciplines. This way, it is important to raise abstraction level in earlier stages of development in order to deal with such complexities in an efficient way. By using Model-Driven Engineering, we propose an approach to transform Sm@rtConfig into a scientific framework comprising requirements engineering up to code generation for the target Processing Unit in which a task is scheduled at runtime. We advocate that our envisioned methodology facilitates not just cross-stakeholders development, but also replication of experimentations by the research community.

References

  1. J. Auerbach, D. F. Bacon, P. Cheng, and R. Rabbah. Lime: a java-compatible and synthesizable language for heterogeneous architectures. SIGPLAN Notices, 45(10):89--108, Oct. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. C. Augonnet, S. Thibault, R. Namyst, and P.-A. Wacrenier. StarPU: A Unified Platform for Task Scheduling on Heterogeneous Multicore Architectures. In Proceedings of the 15th International Euro-Par Conference, Lecture Notes in Computer Science, volume 5704 of Lecture Notes in Computer Science, pages 863--874. Springer, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. V. R. Basili, J. C. Carver, D. Cruzes, L. M. Hochstein, J. K. Hollingsworth, F. Shull, and M. V. Zelkowitz. Understanding the high-performance-computing community: A software engineer's perspective. IEEE Software, 25(4):29--36, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. L. Bass, P. Clements, and R. Kazman. Software architecture in practice. Addison-Wesley, 3rd edition, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. T. Batista, A. Joolia, and G. Coulson. Managing dynamic reconfiguration in component-based systems. In R. Morrison and F. Oquendo, editors, Software Architecture, volume 3527 of Lecture Notes in Computer Science, pages 1--17. Springer Berlin Heidelberg, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. A. P. D. Binotto, M. A. Wehrmeister, A. Kuijper, and C. E. Pereira. Sm@rtconfig: A context-aware runtime and tuning system using an aspect-oriented approach for data intensive engineering applications. Control Engineering Practice, 21(2):204--217, 2013.Google ScholarGoogle ScholarCross RefCross Ref
  7. K. Czarnecki, T. Bednasch, P. Unger, and U. Eisenecker. Generative programming for embedded software: An industrial experience report. In Generative Programming and Component Engineering, pages 156--172. Springer, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. M. C. da Silva Jr, P. Guerra, and C. M. Rubira. A java component model for evolving software systems. In Proceedings of the International Conference on Automated Software Engineering, pages 327--330. IEEE, 2003.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. G. F. Diamos and S. Yalamanchili. Harmony: an execution model and runtime for heterogeneous many core systems. In HPDC '08: Proceedings of the 17th international symposium on High performance distributed computing, pages 197--200, New York, NY, USA, 2008. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. R. France and B. Rumpe. Model-driven development of complex software: A research roadmap. In Workshop on the Future of Software Engineering, pages 37--54. IEEE Computer Society, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design patterns: Abstraction and reuse of object-oriented design. Springer, 1993.Google ScholarGoogle ScholarCross RefCross Ref
  12. L. A. Gayard, C. M. F. Rubira, and P. A. de Castro Guerra. COSMOS*: a COmponent System MOdel for Software Architectures. Technical Report IC-08-04, Institute of Computing, University of Campinas, 2008.Google ScholarGoogle Scholar
  13. I. Gorton. Software quality attributes. In Essential Software Architecture, pages 23--38. Springer Berlin Heidelberg, 2011.Google ScholarGoogle ScholarCross RefCross Ref
  14. Ø. Haugen, B. Møller-Pedersen, J. Oldevik, G. K. Olsen, and A. Svendsen. Adding standardized variability to domain specific languages. In International Software Product Line Conference, pages 139--148. IEEE, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. Hutchinson, M. Rouncefield, and J. Whittle. Model-driven engineering practices in industry. In Proceedings of the 33rd International Conference on Software Engineering, ICSE '11, pages 633--642, New York, NY, USA, 2011. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. V. J. Jiménez, L. Vilanova, I. Gelado, M. Gil, G. Fursin, and N. Navarro. Predictive runtime code scheduling for heterogeneous architectures. In HiPEAC '09: Proceedings of the 4th International Conference on High Performance Embedded Architectures and Compilers, pages 19--33, Berlin, Heidelberg, 2009. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. Kästner, S. Apel, and M. Kuhlemann. Granularity in software product lines. In Proceedings of the International conference on Software engineering, pages 311--320. ACM, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. C. A. Mattmann, D. J. Crichton, N. Medvidovic, and S. Hughes. A software architecture-based framework for highly distributed and data intensive scientific applications. In Proceedings of the 28th international conference on Software engineering, ICSE '06, pages 721--730, New York, NY, USA, 2006. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. U. T. Mello and L. Xu. Using {XML} to improve the productivity and robustness in application development in geosciences. Computers & Geosciences, 32(10):1646--1653, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Meswani, L. Carrington, D. Unat, A. Snavely, S. Baden, and S. Poole. Modeling and predicting application performance on hardware accelerators. In Workload Characterization (IISWC), 2011 IEEE International Symposium on, pages 73--73, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. OMG. Unified modeling language, superstructure - version 2.4.1, 2011. Available from: URL:http://www.omg.org/spec/UML/2.4.1/. Last access: October of 2013.Google ScholarGoogle Scholar
  22. OMG. Common variability language, 2013. Available from: URL:http://www.omgwiki.org/variability/doku.php. Last access: October of 2013.Google ScholarGoogle Scholar
  23. A. Rashid, A. Moreira, and J. Araújo. Modularisation and composition of aspectual requirements. In Proceedings of the 2nd international conference on Aspect-oriented software development, pages 11--20, New York, NY, USA, 2003. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. Schmidberger and B. Brügge. Need of software engineering methods for high performance computing applications. In International Symposium on Parallel and Distributed Computing, pages 40--46. IEEE, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. J. Segal and C. Morris. Handbook of Research on Computational Science and Engineering: Theory and Practice, volume 1, chapter Developing Software for a Scientific Community:Some Challenges and Solutions, pages 177--196. IGI Global, USA, 2011.Google ScholarGoogle Scholar
  26. P. Sochos, M. Riebisch, and I. Philippow. The feature-architecture mapping (FArM) method for feature-oriented development of software product lines. In Proceedings of the International Symposium and Workshop on Engineering of Computer Based Systems, pages 9--pp. IEEE, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. C. Szyperski. Component software: beyond object-oriented programming. Pearson Education, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A Self-tuning Scientific Framework using Model-Driven Engineering for Heterogeneous Execution Platforms

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Other conferences
        ADAPT '14: Proceedings of International Workshop on Adaptive Self-tuning Computing Systems
        January 2014
        33 pages
        ISBN:9781450325141
        DOI:10.1145/2553062

        Copyright © 2014 Owner/Author

        Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 22 January 2014

        Check for updates

        Qualifiers

        • research-article
        • Research
        • Refereed limited

        Acceptance Rates

        ADAPT '14 Paper Acceptance Rate7of17submissions,41%Overall Acceptance Rate14of30submissions,47%
      • Article Metrics

        • Downloads (Last 12 months)1
        • Downloads (Last 6 weeks)0

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader