ΣC: A Programming Model and Language for Embedded Manycores

We present ΣC, a programming model and language for high performance embedded manycores. The programming model is based on process networks with non determinism extensions and process behavior specifications. The language itself extends C, with parallelism, composition and process abstractions. It is intended to support architecture independent, high-level parallel programming on embedded manycores, and allows for both low execution overhead and strong execution guarantees. ΣC is being developed as part of an industry-grade tool chain for a high performance embedded manycore architecture.

[1]  Axel Jantsch,et al.  Models of computation and languages for embedded system design , 2005 .

[2]  Pascal Aubry,et al.  A linear programming approach to general dataflow process network verification and dimensioning , 2010, ICE.

[3]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[4]  Pierre Jouvelot,et al.  Semantical interprocedural parallelization: an overview of the PIPS project , 1991 .

[5]  William Thies,et al.  StreamIt: A Language for Streaming Applications , 2002, CC.

[6]  Guang R. Gao,et al.  Well-behaved dataflow programs for DSP computation , 1992, [Proceedings] ICASSP-92: 1992 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[7]  Christophe Reutenauer,et al.  Aspects mathématiques des réseaux de pétri , 1988 .

[8]  Edward A. Lee,et al.  Hierarchical finite state machines with multiple concurrency models , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Denis Barthou,et al.  A Multidimensional Array Slicing DSL for Stream Programming , 2010, 2010 International Conference on Complex, Intelligent and Software Intensive Systems.

[10]  Gilles Kahn,et al.  The Semantics of a Simple Language for Parallel Programming , 1974, IFIP Congress.

[11]  Kung-Kiu Lau,et al.  Software Component Models , 2006, IEEE Transactions on Software Engineering.

[12]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..