Advertisement

Constraint-Flow Nets: A Model for Building Constraints from Resource Dependencies

  • Simon BliudzeEmail author
  • Alena Simalatsar
  • Alina Zolotukhina
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10319)

Abstract

The major research in the resource management literature focuses primarily on two complementary sub-problems: (1) specification languages for formulating resource requests and (2) constraint problems modelling allocation and scheduling. Both directions assume the knowledge of the underlying platform architecture and the dependencies it induces on the usage of the various resources. In this paper, we bridge this gap by introducing constraint-flow nets (cfNets). A cfNet is defined by a set of resources and dependencies between them, each dependency having an associated constraint schema. The model is inspired by Petri nets, with resources corresponding to places and dependencies—to transitions. Given an architecture of dependent resources, an initial resource request is propagated through the dependencies. The generated constraints are then conjuncted into the global allocation constraint. We study the notion of conflicts in cfNets and prove that for conflict-free cfNets the global allocation constraint can be constructed unambiguously. Furthermore, we provide an SMT-based algorithm for conflict detection and discuss the use of priorities to dynamically resolve conflicts at run-time. Finally, we illustrate the use of cfNets on a case study inspired by the Kalray MPPA architecture.

Keywords

Resource management Resource dependencies Constraint-flow nets Petri nets Marking reachability Conflict detection 

Notes

Acknowledgements

This paper has received a large number of very constructive comments. Although—mostly due to space and time limitations—we did not manage to address all of them, we are very grateful to the anonymous reviewers for their suggestions that we hope to implement in our future work.

References

  1. 1.
    Agarwal, M.K., Appleby, K., Gupta, M., Kar, G., Neogi, A., Sailer, A.: Problem determination using dependency graphs and run-time behavior models. In: Sahai, A., Wu, F. (eds.) DSOM 2004. LNCS, vol. 3278, pp. 171–182. Springer, Heidelberg (2004). doi: 10.1007/978-3-540-30184-4_15
  2. 2.
    Ansótegui, C., Bofill, M., Palahí, M., Suy, J., Villaret, M.: Satisfiability modulo theories: an efficient approach for the resource-constrained project scheduling problem. In: Symposium on Abstraction, Reformulation, and Approximation (2011)Google Scholar
  3. 3.
    Arbach, Y., Karcher, D., Peters, K., Nestmann, U.: Dynamic causality in event structures. In: Graf, S., Viswanathan, M. (eds.) FORTE 2015. LNCS, vol. 9039, pp. 83–97. Springer, Cham (2015). doi: 10.1007/978-3-319-19195-9_6
  4. 4.
    Berson, D.A., Gupta, R., Soffa, M.L.: GURRR: a global unified resource requirements representation. SIGPLAN Not. 30(3), 23–34 (1995)CrossRefGoogle Scholar
  5. 5.
    Bliudze, S., Mavridou, A., Szymanek, R., Zolotukhina, A.: Coordination of software components with BIP: application to OSGi. In: Proceedings of the 6th International Workshop on Modeling in Software Engineering, MiSE 2014, pp. 25–30. ACM, New York (2014)CrossRefGoogle Scholar
  6. 6.
    Bliudze, S., Mavridou, A., Szymanek, R., Zolotukhina, A.: Exogenous coordination of concurrent software components with JavaBIP. Software: Practice and Experience (2017). Early view: http://dx.doi.org/10.1002/spe.2495
  7. 7.
    Bliudze, S., Simalatsar, A., Zolotukhina, A.: Modelling resource dependencies. Technical report 218599, EPFL. https://infoscience.epfl.ch/record/218599
  8. 8.
    Chien, A.A., Casanova, H., Kee, Y.-S., Huang, R.: The virtual grid description language: vgDL. Technical report CS2005-0817, Department of Computer Science and Engineering, University of California, San Diego (2004)Google Scholar
  9. 9.
    Colom, J.M.: The resource allocation problem in flexible manufacturing systems. In: Aalst, W.M.P., Best, E. (eds.) ICATPN 2003. LNCS, vol. 2679, pp. 23–35. Springer, Heidelberg (2003)Google Scholar
  10. 10.
    Cui, Y., Nahrstedt, K.: QoS-aware dependency management for component-based systems. In: Proceedings of the 10th IEEE International Symposium on High Performance Distributed Computing, pp. 127–138 (2001)Google Scholar
  11. 11.
    Czajkowski, K., Foster, I., Karonis, N., Kesselman, C., Martin, S., Smith, W., Tuecke, S.: A resource management architecture for metacomputing systems. In: Feitelson, D.G., Rudolph, L. (eds.) JSSp. 1998. LNCS, vol. 1459, pp. 62–82. Springer, Heidelberg (1998). doi: 10.1007/BFb0053981
  12. 12.
    de Dinechin, B.D., van Amstel, D., Poulhiès, M., Lager, G.: Time-critical computing on a single-chip massively parallel processor. In: Proceedings of the Conference on Design, Automation & Test in Europe, DATE 2014, p. 97: 1–97: 6, 3001 Leuven, Belgium, Belgium, European Design and Automation Association (2014)Google Scholar
  13. 13.
    Ensel, C., Keller, A.: An approach for managing service dependencies with XML and the resource description framework. J. Netw. Syst. Manage. 10(2), 147–170 (2002)CrossRefGoogle Scholar
  14. 14.
    Ezpeleta, J., Colom, J., Martínez, J.: A Petri net based deadlock prevention policy for flexible manufacturing systems. IEEE Trans. Robot. Autom. 11, 173–184 (1995)CrossRefGoogle Scholar
  15. 15.
    Giannopoulou, G., Stoimenov, N., Huang, P., Thiele, L., de Dinechin, B.: Mixed-criticality scheduling on cluster-based manycores with shared communication and storage resources. Real-Time Syst. 51(4), 1–51 (2015)Google Scholar
  16. 16.
    Kalray. Kalray MPPA-256, March 2015. http://www.kalray.eu/IMG/pdf/FLYER_MPPA_MANYCORE.pdf
  17. 17.
    Kee, Y.-S., Logothetis, D., Huang, R.Y., Casanova, H., Chien, A.A.: Efficient resource description and high quality selection for virtual grids. In: CCGRID, pp. 598–606. IEEE Computer Society (2005)Google Scholar
  18. 18.
    Kountouris, A.A., Wolinski, C.: Hierarchical conditional dependency graphs for conditional resource sharing. In: Proceedings of the 24th Euromicro Conference, vol. 1, pp. 313–316,., August 1998Google Scholar
  19. 19.
    Krauter, K., Buyya, R., Maheswaran, M.: A taxonomy and survey of grid resource management systems for distributed computing. Softw. Pract. Experience 32(2), 135–164 (2002)CrossRefzbMATHGoogle Scholar
  20. 20.
    Lassila, O., Swick, R.R.: Resource description frame-work (RDF) model and syntax specification. Technical report REC-rdf-syntax-19990222, World Wide Web Consortium (W3C), February 1999Google Scholar
  21. 21.
    López-Grao, J.-P., Colom, J.-M.: A petri net perspective on the resource allocation problem in software engineering. In: Jensen, K., Donatelli, S., Kleijn, J. (eds.) ToPNoC V. LNCS, vol. 6900, pp. 181–200. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-29072-5_8
  22. 22.
    Montanari, U.: Networks of constraints: fundamental properties and applications to picture processing. Inf. Sci. 7, 95–132 (1974)MathSciNetCrossRefzbMATHGoogle Scholar
  23. 23.
    Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains, part I. Theoret. Comput. Sci. 13(1), 85–108 (1981)MathSciNetCrossRefzbMATHGoogle Scholar
  24. 24.
    Raman, R., Livny, M., Solomon, M.: Matchmaking: an extensible framework for distributed resource management. Cluster Comput. 2(2), 129–138 (1999)CrossRefGoogle Scholar
  25. 25.
    Senkul, P., Toroslu, I.H.: An architecture for workflow scheduling under resource allocation constraints. Inform. Syst. 30(5), 399–422 (2005)CrossRefGoogle Scholar
  26. 26.
    Tendulkar, P., Poplavko, P., Galanommatis, I., Maler, O.: Many-core scheduling of data parallel applications using SMT solvers. In: 2014 17th Euromicro Conference on Digital System Design (DSD), pp. 615–622. IEEE (2014)Google Scholar
  27. 27.
    Tendulkar, P., Poplavko, P., Maselbas, J., Galanommatis, I., Maler, O.: A run- time environment for real-time streaming applications on clustered multi-cores. Technical report, Verimag (2015)Google Scholar
  28. 28.
    Tricas, F., Garcia-Valles, F., Colom, J.M., Ezpeleta, J.: A Petri net structure-based deadlock prevention solution for sequential resource allocation systems. In: Proceedings of the 2005 IEEE International Conference on Robotics and Automation, ICRA 2005, pp. 271–277, April 2005Google Scholar
  29. 29.
    Van, H.N., Tran, F.D., Menaud, J.M.: SLA-aware virtual resource management for cloud infrastructures. In: Ninth IEEE International Conference on Computer and Information Technology, CIT 2009, vol. 1, pp. 357–362,., October 2009Google Scholar
  30. 30.
    Glabbeek, R., Plotkin, G.: Event structures for resolvable conflict. In: Fiala, J., Koubek, V., Kratochvíl, J. (eds.) MFCS 2004. LNCS, vol. 3153, pp. 550–561. Springer, Heidelberg (2004). doi: 10.1007/978-3-540-28629-5_42
  31. 31.
    Vanderham, J., Dijkstra, F., Travostino, F., Andree, H., Delaat, C.: Using RDF to describe networks. Future Gener. Comput. Syst. 22(8), 862–867 (2006)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2017

Authors and Affiliations

  • Simon Bliudze
    • 1
    Email author
  • Alena Simalatsar
    • 2
  • Alina Zolotukhina
    • 1
  1. 1.École Polytechnique Fédérale de LausanneLausanneSwitzerland
  2. 2.University of Applied Sciences Western SwitzerlandSionSwitzerland

Personalised recommendations