• No results found

S-Net: High-level coordination for the many-core era - GrelSchoShafERIC10

N/A
N/A
Protected

Academic year: 2021

Share "S-Net: High-level coordination for the many-core era - GrelSchoShafERIC10"

Copied!
2
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

UvA-DARE is a service provided by the library of the University of Amsterdam (https://dare.uva.nl)

UvA-DARE (Digital Academic Repository)

S-Net: High-level coordination for the many-core era

Grelck, C.; Scholz, S.-B.; Shafarenko, A.

Publication date

2010

Document Version

Accepted author manuscript

Published in

Intel European Research and Innovation Conference (ERIC'10), Braunschweig, Germany

Link to publication

Citation for published version (APA):

Grelck, C., Scholz, S-B., & Shafarenko, A. (2010). S-Net: High-level coordination for the

many-core era. In Intel European Research and Innovation Conference (ERIC'10),

Braunschweig, Germany

General rights

It is not permitted to download or to forward/distribute the text or part of it without the consent of the author(s) and/or copyright holder(s), other than for strictly personal, individual use, unless the work is under an open content license (like Creative Commons).

Disclaimer/Complaints regulations

If you believe that digital publication of certain material infringes any of your rights or (privacy) interests, please let the Library know, stating your reasons. In case of a legitimate complaint, the Library will make the material inaccessible and/or remove it from the website. Please Ask the Library: https://uba.uva.nl/en/contact, or a letter to: Library of the University of Amsterdam, Secretariat, Singel 425, 1012 WP Amsterdam, The Netherlands. You will be contacted as soon as possible.

(2)

S-Net: High-Level Coordination for the Many-Core Era

Clemens Grelck1, Sven-Bodo Scholz2, Alex Shafarenko2 1 University of Amsterdam, Amsterdam, Netherlands 2 University of Hertfordshire, Hatfield, United Kingdom

C.Grelck@uva.nl

Summary

S-Net is a coordination language that aims at reconciling the legacy world of sequential software and pro-gramming techniques with the hardware reality in the many-core era. This is achieved through a near-complete separation of conventional application programming from concurrency-related concerns. Sequential legacy code as well as new code written in a conventional concurrency-agnostic style is made fit for efficient execu-tion on modern many-core systems through a high-level coordinaexecu-tion layer based on stream processing.

1 S-Net in a Nutshell

In the many-core era software must be parallel. Period. This is first and foremost a software engineering problem. Most existing software is sequential, and very few programmers are proficient in parallel programming. In contrast, all modern hardware is parallel and the degree of parallelism grows exponentially. It hardly seems feasible to adapt legacy software using conventional parallel programming techniques, which heavily intertwine algorithmic behaviour with the mere organisation of concurrent execution including problem decomposition, communication and synchronisation. S-Net [1] is a novel coordination language whose design thoroughly avoids intertwining computational and organisational aspects. Instead, S-Net aims at a complete separation of concern between application

engineering (i.e. writing or reusing sequential

applic-ation building blocks) and concurrency engineering (i.e. composing them to a parallel application). Con-sequently, we leave the specification of basic com-ponents to conventional languages and let S-Net fo-cus on the interfacing of sequential components and their orderly collaborative interaction.

S-Net views a piece of legacy code as a box that is connected to the outside world solely by two typed streams: an input stream and an output stream. A box is characterised by a stream transformer function that maps a single data item from the input stream to a (possibly empty) stream of data items on the output stream. To facilitate dynamic reconfiguration, a box has no internal state and no access to external state. The single-input/single-output (SISO) design of S-Net is essential for the separation of concerns. Only with this restriction can the (legacy) implementation

of a box completely abstract from its location in a network of boxes. Multiple input streams would im-mediately raise the question of synchronisation while multiple output streams would raise the issue of routing.

It is up to the specifically trained concurrency

engin-eer to orchestrate a number of boxes to form a

paral-lel application. Thanks to the SISO restriction, streaming networks can be described by algebraic formulae. Network combinators take operand boxes or networks and define another SISO network. Thus, streaming networks of asynchronous components are defined inductively. We have identified a total of four network combinators that prove sufficient to con-struct a large number of network prototypes:static serial and parallel composition of heterogeneous components as well as dynamic serial and parallel replication of homogeneous components.

Efficient implementations automatically map S-Nets to symmetric multithreaded architectures [2] as well as to distributed address space clusters thereof [3].

Publications

[1] C. Grelck, S.B. Scholz, and A. Shafarenko, “Asynchronous Stream Processing with S-Net“, Int.

Journal of Parallel Programming 38(2) (2010).

[2] C. Grelck and F. Penczek, “Implementation Ar-chitecture and Multithreaded Runtime System of S-Net“, 20th International Symposium on Implementa-tion and ApplicaImplementa-tion of FuncImplementa-tional Languages, Re-vised Selected Papers, LNCS, Springer (2010). [3] C. Grelck, J. Julku, and F. Penczek, “Distributed S-Net“, Workshop on Advances in Message Passing , ACM Digital Library (2010).

Referenties

GERELATEERDE DOCUMENTEN

In 2000 zijn er in dit gebied nog een aantal vindplaatsen aangetroffen door leden van de BLWG (Aptroot e.a., 2000) en zijn er enkele aangetroffen in het noordoosten van

Het is te verwachten dat de relatie tussen plaagbeheersing en landschap door het jaar heen complex is, onder andere door de aantalsfluctuaties van plagen en natuurlijke

Stress relaxation and dynamic experiments with massive and porous bone cements : a method for predicting the stability of the fixation of femoral head prostheses : a preliminary

Inderdaad, nadat de zekerheid werd verkregen dat de zusters van het Sacré-Coeur (nu te Brussel) die het orgel in 1900 ten geschenke hadden gekregen er geen aan- spraak meer

We observe that different interactions governing the assembly forces can be modulated by controlling the concentration of assembling nanorods and the width of the hydrophilic

We expected the filter to clog (pressure to rise above 300 mbar) before 0.35?10 6 culture cells were passed through a track-etched filter with 0.35?10 6 pores, as these cells are

After restricting the DNA sequence the fragments that grow exponentially have to be selected. To do this a virtual Polymerase Chain Reaction or VPCR has to be created. The VPCR

Different approaches have been used to model the battery properties, varying from very detailed electro-chemical models to high level stochastic models.. In this report an overview