Distributed implementation of SIGNAL: Scheduling & graph clustering

  • Olivier MaffeÏs
  • Paul Le Guernic
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 863)


This paper introduces the scheduling strategy and some key tools which have been designed for the distributed implementation of SIGNAL, a real-time synchronous dataflow language. First, we motivate a scheduling strategy with respect to the reactivity and time-predictability requirements bound to real-time computing. Then, several key tools to implement this scheduling strategy are described. These tools are acting on the concept of Synchronous-Flow Dependence Graph (SFD Graph) which defines a generalization of Directed Acyclic Graph and constitutes the abstract representation of SIGNAL programs. The tools presented in this paper are: (a) the abstraction of SFD graphs which enables grain-size tuning according to the target architecture, (b) the notion of scheduling over SFD graphs and (c) qualitative clustering tools based on the notion of Compositional Deadlock Consistency.


Directed Acyclic Graph Schedule Strategy Dependence Graph Precedence Constraint Static Schedule 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A. V. Aho, R. Sethi, and J. D. Ullman. Compilers: Principles, Techniques, and Tools. Addison-Wiley, 1986.Google Scholar
  2. 2.
    T. Amagbegnon, L. Besnard, and P. L. Guernic. Aborescent canonical form of boolean expressions. Research Report 826, IRISA, June 1994.Google Scholar
  3. 3.
    S. H. Bokhari. Partitioning problems in parallel, pipelined, and distributed computing. IEEE Trans. on Computers, 37(1):48–57, January 1988.Google Scholar
  4. 4.
    P. Bournai, C. Lavarenne, P. Le Guernic, O. MaffeÏs, and Y. Sorel. Interface SIGNAL-SynDEx. Research report 2206, INRIA France, Rennes, march 1994.Google Scholar
  5. 5.
    F. Boussinot and R. De Simone. The Esterel language. Proceedings of the IEEE, 79(9):1293–1304, Sept. 1991.Google Scholar
  6. 6.
    A. Gerasoulis and T. Yang. A comparison of clustering heuristics for clustering dags on multiprocessors. Journal of Parallel and Distributed Computing, Special Issues on Scheduling and Load Balancing, 16(4):276–291, Dec. 1992.Google Scholar
  7. 7.
    A. Gerasoulis and T. Yang. A static-dataflow scheduling tool for scalable parallel architectures. In Summer School on Scheduling Theory and its applications, pages 382–417. Chateau de Bonas(Gers), INRIA, Sept. 1992.Google Scholar
  8. 8.
    N. Halbwachs, P. Caspi, P. Raymond, and D. Pilaud. The synchronous data flow programming language Lustre. Proc. of the IEEE, 79(9):1305–1321, Sept. 1991.Google Scholar
  9. 9.
    S. J. Kim and J. C. Browne. A general approach to mapping of parallel computation upon multiprocessor architectures. In Int. Conf. on Parallel Processing, volume III, pages 1–8, 1988.Google Scholar
  10. 10.
    C. W. Krueger. Software reuse. ACM Computing Surveys, 24(2):131–183, June 1992.Google Scholar
  11. 11.
    C. Lavarenne, O. Segrouchni, Y. Sorel, and M. Sorine. The Syndex software environment for real-time distributed systems design and implementation. In European Control Conference, volume 2, pages 1684–1689, June 1991.Google Scholar
  12. 12.
    B. Le Goff, P. Le Guernic, and J. Aráoz Durand. Semi-granules and schielding for off-line scheduling. Research Report 1228, INRIA France, Rocquencourt, May 1990.Google Scholar
  13. 13.
    P. Le Guernic, T. Gautier, M. Le Borgne, and C. Le Maire. Programming real-time applications with Signal. Proceedings of the IEEE, 79(9):1321–1336, Sept. 1991.Google Scholar
  14. 14.
    O. MaffeÏs. Ordonnancements de graphes de flots synchrones; Application à Signal. PhD thesis, Université de Rennes 1, France, Jan. 1993.Google Scholar
  15. 15.
    O. MaffeÏs and P. Le Guernic. Combining dependability with architectural adaptability by means of the Signal language. In 3rd Int. Workshop on Static Analysis, pages 99–110. LNCS no 724, Springer-Verlag, Sept. 1993.Google Scholar
  16. 16.
    Z. Manna and A. Pnueli. The Temporal Logic of Reactive and Concurrent Systems. Springer-Verlag, 1991.Google Scholar
  17. 17.
    F. Maraninchi. The Argos language: Graphical representation of automata and description of reactive systems. In IEEE Workshop on Visual Languages, Oct. 1991.Google Scholar
  18. 18.
    V. Sarkar. Partitioning and Scheduling Parallel Programs for Multiprocessors. Research Monographs in Parallel and Distributed Computing. MIT Press, Cambridge, Massachusetts, and Pitman Publishing, London, U.K., 1989.Google Scholar
  19. 19.
    USDD. Reference Manual for the Ada Programming Language. United States, Department of Defense, 1983. ANSI:MIL-STD-1815A-1983.Google Scholar
  20. 20.
    T. Yang and A. Gerasoulis. Pyrros: Static task scheduling and code generation for message-passing multiprocessors. In Proc. of the 6th ACM Int. Conf. on Supercomputing, pages 428–437, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Olivier MaffeÏs
    • 1
  • Paul Le Guernic
    • 2
  1. 1.GMD I5 - SKSSankt AugustinGermany
  2. 2.Campus de BeaulieuIRISARennes CedexFrance

Personalised recommendations