Skip to main content

The Combinatorics of Barrier Synchronization

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11522))

Abstract

In this paper we study the notion of synchronization from the point of view of combinatorics. As a first step, we address the quantitative problem of counting the number of executions of simple processes interacting with synchronization barriers. We elaborate a systematic decomposition of processes that produces a symbolic integral formula to solve the problem. Based on this procedure, we develop a generic algorithm to generate process executions uniformly at random. For some interesting sub-classes of processes we propose very efficient counting and random sampling algorithms. All these algorithms have one important characteristic in common: they work on the control graph of processes and thus do not require the explicit construction of the state-space.

This research was partially supported by the ANR MetACOnc project ANR-15-CE40-0014.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    cf. https://gitlab.com/ParComb/combinatorics-barrier-synchro.git.

  2. 2.

    A function f is in \(\sharp \)P if there is a polynomial-time non-deterministic Turing machine M such that for any instance x, f(x) is the number of executions of M that accept x as input. See https://en.wikipedia.org/wiki/%E2%99%AFP-complete.

  3. 3.

    At the end of the decomposition, the DAG is in fact reduced to a single node, which is removed by an integration between 0 and 1.

  4. 4.

    The Python/Sage implementation of the random sampler is available at the following location: https://gitlab.com/ParComb/combinatorics-barrier-synchro/blob/master/code/RandLinExtSage.py.

  5. 5.

    Arbogen is uniform random generation for context-free grammar structures: cf. https://github.com/fredokun/arbogen.

References

  1. Abbes, S., Mairesse, J.: Uniform generation in trace monoids. In: Italiano, G.F., Pighizzini, G., Sannella, D.T. (eds.) MFCS 2015. LNCS, vol. 9234, pp. 63–75. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48057-1_5

    Chapter  Google Scholar 

  2. Banderier, C., Marchal, P., Wallner, M.: Rectangular young tableaux with local decreases and the density method for uniform random generation (short version). In: GASCom 2018, Athens, Greece, June 2018

    Google Scholar 

  3. Basset, N., Mairesse, J., Soria, M.: Uniform sampling for networks of automata. In: Concur 2017, LIPIcs, vol. 85, pp. 36:1–36:16. Schloss Dagstuhl (2017)

    Google Scholar 

  4. Bodini, O., Genitrini, A., Peschanski, F.: The combinatorics of non-determinism. In: FSTTCS 2013, LIPIcs, vol. 24, pp. 425–436. Schloss Dagstuhl (2013)

    Google Scholar 

  5. Bodini, O., Genitrini, A., Peschanski, F.: A quantitative study of pure parallel processes. Electron. J. Comb. 23(1), pp. P1.11, 39 (2016)

    Google Scholar 

  6. Bodini, O., Dien, M., Genitrini, A., Peschanski, F.: Entropic uniform sampling of linear extensions in series-parallel posets. In: Weil, P. (ed.) CSR 2017. LNCS, vol. 10304, pp. 71–84. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-58747-9_9

    Chapter  Google Scholar 

  7. Bodini, O., Dien, M., Genitrini, A., Viola, A.: Beyond series-parallel concurrent systems: the case of arch processes. In: Analysis of Algorithms, AofA 2018, LIPIcs, vol. 110, pp. 14:1–14:14 (2018)

    Google Scholar 

  8. Brightwell, G., Winkler, P.: Counting linear extensions is #P-complete. In: STOC, pp. 175–181 (1991)

    Google Scholar 

  9. Dittmer, S., Pak, I.: Counting linear extensions of restricted posets. arXiv e-prints arXiv:1802.06312, February 2018

  10. Flajolet, P., Zimmermann, P., Cutsem, B.V.: A calculus for the random generation of labelled combinatorial structures. Theor. Comput. Sci. 132(2), 1–35 (1994)

    Article  MathSciNet  Google Scholar 

  11. Gerbessiotis, A.V., Valiant, L.G.: Direct bulk-synchronous parallel algorithms. J. Parallel Distrib. Comput. 22(2), 251–267 (1994)

    Article  Google Scholar 

  12. Grosu, R., Smolka, S.A.: Monte Carlo model checking. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 271–286. Springer, Heidelberg (2005). https://doi.org/10.1007/978-3-540-31980-1_18

    Chapter  Google Scholar 

  13. Hensgen, D., Finkel, R.A., Manber, U.: Two algorithms for barrier synchronization. Int. J. Parallel Prog. 17(1), 1–17 (1988)

    Article  Google Scholar 

  14. Huber, M.: Fast perfect sampling from linear extensions. Discrete Math. 306(4), 420–428 (2006)

    Article  MathSciNet  Google Scholar 

  15. Liskov, B., Shrira, L.: Promises: linguistic support for efficient asynchronous procedure calls in distributed systems. In: PLDI 1988, pp. 260–267. ACM (1988)

    Google Scholar 

  16. Oudinet, J., Denise, A., Gaudel, M.-C., Lassaigne, R., Peyronnet, S.: Uniform Monte-Carlo model checking. In: Giannakopoulou, D., Orejas, F. (eds.) FASE 2011. LNCS, vol. 6603, pp. 127–140. Springer, Heidelberg (2011). https://doi.org/10.1007/978-3-642-19811-3_10

    Chapter  Google Scholar 

  17. Rival, I. (ed.): Algorithms and Order. NATO Science Series, vol. 255. Springer, Dordrecht (1989). https://doi.org/10.1007/978-94-009-2639-4

    Book  MATH  Google Scholar 

  18. Sen, K.: Effective random testing of concurrent programs. In: Automated Software Engineering ASE 2007, pp. 323–332. ACM (2007)

    Google Scholar 

  19. Stanley, R.P.: Two poset polytopes. Discrete Comput. Geom. 1, 9–23 (1986)

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgment

We thank the anonymous reviewers as well as our “shepard” for helping us making the paper better and hopefully with less errors.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Frédéric Peschanski .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bodini, O., Dien, M., Genitrini, A., Peschanski, F. (2019). The Combinatorics of Barrier Synchronization. In: Donatelli, S., Haar, S. (eds) Application and Theory of Petri Nets and Concurrency. PETRI NETS 2019. Lecture Notes in Computer Science(), vol 11522. Springer, Cham. https://doi.org/10.1007/978-3-030-21571-2_21

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-21571-2_21

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-21570-5

  • Online ISBN: 978-3-030-21571-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics