Declarative coordination in a multicore environment: the tyranny of streams

2011 
This talk will focus on the declarative coordination language S-Net developed by the speaker in collaboration with members of the Compilation Technology and Computer Architecture group at University of Hertfordshire. In the words of Gelenter, who pioneered the term coordination in 1992, a coordination language "provides operations to create computational activities and to support communication among them." Despite this very imperative view, Gelenter's "glue that binds separate activities into an ensemble" can be just that, a glue, without operations provided for process creation or explicit support given to process communication. Instead, the coordination programmer merely declares the intended (concurrent) ensemble as a composition of computational building blocks, using some compact algebraic notation. S-Net is, in the main, such notation. In the physical sense, the binding of the components in S-Net is achieved by anonymous streams which connect them according to some algebraic formulae. The coordinating declaration drives the components via the streams, hence the above title. The talk will expose a few unique issues of declarative coordination: the topological challenge and the positive role of nondeterminism in meeting it; various software engineering concerns and how they may be addressed by a type system with subtyping and a stream-oriented form of inheritance; the homogeneity of a multicore platform and its reflection in SPMD-style network-replication combinators, etc. The talk will also touch upon the current state of tool development for S-Net, a large ongoing EU-funded project which involves industry and which endeavours to make S-Net sensitive to extra-functional properties of both the code and the platform it is running on, and finally, the industrial uptake of S-Net: the experience of Thales, France and the planned experiments at Philips Healthcare, NL and SAP, Germany.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    0
    References
    0
    Citations
    NaN
    KQI
    []