skip to main content
10.1145/2103736.2103745acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
short-paper

Compilers must speak properties, not just code: CAL: constraint aggregation language for declarative component-coordination

Published:28 January 2012Publication History

ABSTRACT

This is a work-in-progress presentation in which we will argue that approaches based on components coordinated declaratively, such as S-Net, are ideally placed for automatic multicore optimisation. We will present our case for a component compiler producing not only object code, but also symbolic constraints describing the functional, and more importantly extra-functional, properties of the source component, such as computational complexity, resource and configuration requirements. We also argue that if the coordination language is well structured, which is easily achievable when it is declarative, it is possible to aggregate the constraints yielded by the components stage-wise and to represent the multicore optimisation problem in standard CSP form to use general-purpose constraint solvers. The use of symbolic constraints to describe system behaviour is shown by some examples of S-Net network combinators. If successful our approach will achieve an unprecedented degree of flexibility in programming for a wide range of heterogeneous multi-/many-core architectures. We would like to initiate a discussion on the interplay of constraint solving and declarative coordination programming.

References

  1. C. Grelck, S.-B. Scholz, and A. Shafarenko, SA Gentle Introductionto S-Net: Typed Stream Processing and Declarative Coordination of Asynchronous Components, T Parallel Processing Letters, vol. 18, no. 2,pp. 221 V237, 2008.Google ScholarGoogle Scholar
  2. Newton, R., Schlimbach, F., Hampton, M., Knobe, K.: Capturing and composing parallel patterns with Intel CnC. In: Proc. of 2nd USENIX Workshop on Hot Topics in Parallelism (HotPar 2010), Berkley, CA, USA (June 2010).Google ScholarGoogle Scholar
  3. F. Penczek, S. Herhut, C. Grelck, S.B. Scholz, A. Shafarenko, R. Barrere and E. Lenormand, 2010, "Parallel signal processing with S-Net", Procedia Computer Science, vol 1, no. 1, pp. 2085--2094 .Google ScholarGoogle Scholar
  4. W. Cheng, F. Penczek, C. Grelck, R. Kirner, B. Scheuermann, and A. Shafarenko. Modeling streams-based variants of ant colony optimisation for parallel systems. In Workshop on Feedback-Directed Compiler Optimization for Multi-Core Architectures, Paris, France, Jan. 2012. (to appear).Google ScholarGoogle Scholar
  5. C. Grelck, K. Hammond, H. Hertlein, P. Hölzenspies, C. Jesshope, R. Kirner, B. Scheuermann, A. Shafarenko, I. T. Boekhorst, and V. Wieser. Engineering concurrent software guided by statistical performance analysis. In Proc. International Conference on Parallel Computing, Ghent, Belgium, Aug./Sep. 2011.Google ScholarGoogle Scholar
  6. V. Wieser, P. K. Hölzenspies, R. Kirner, and M. Roßbory. Statistical performance analysis with dynamic workload using S-NET. In Workshop on Feedback-Directed Compiler Optimization for Multi-Core Architectures, Paris, France, Jan. 2012. (to appear).Google ScholarGoogle Scholar
  7. A. Shafarenko and R. Kirner. CAL: A language for aggregating functional and extrafunctional constraints in streaming networks. Technical report, University of Hertfordshire, Hatfield, UK, Jan. 2011. available at http://arxiv.org/abs/1101.3356.Google ScholarGoogle Scholar
  8. C. Grelck, A. S. (eds):, F. Penczek, C. Grelck, H. Cai, J. Julku, P. Hölzenspies, S. Scholz, and A. Shafarenko. S-Net Language Report 2.0. Technical Report 499, University of Hertfordshire, School of Computer Science, Hatfield, England, United Kingdom, 2010.Google ScholarGoogle Scholar
  9. E. R. Gansner and S. C. North. An open graph visualisation system and its applications to software engineering. SOFTWARE - PRACTICE AND EXPERIENCE, 30 (11): 1203--1233, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. B. Dutertre and L. de Moura. The Yices SMT solver. Tool paper at http://yices.csl.sri.com/tool-paper.pdf, August 2006.Google ScholarGoogle Scholar

Index Terms

  1. Compilers must speak properties, not just code: CAL: constraint aggregation language for declarative component-coordination

      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 Conferences
        DAMP '12: Proceedings of the 7th workshop on Declarative aspects and applications of multicore programming
        January 2012
        62 pages
        ISBN:9781450311175
        DOI:10.1145/2103736
        • General Chair:
        • Umut Acar,
        • Program Chair:
        • Vítor Santos Costa

        Copyright © 2012 ACM

        Permission to make digital or hard copies of all or part 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 components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 28 January 2012

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • short-paper

        Upcoming Conference

        POPL '25

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader