Powered by OpenAIRE graph
Found an issue? Give us feedback
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/ https://hal.inria.fr...arrow_drop_down
image/svg+xml art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos Open Access logo, converted into svg, designed by PLoS. This version with transparent background. http://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg art designer at PLoS, modified by Wikipedia users Nina, Beao, JakobVoss, and AnonMoos http://www.plos.org/
image/svg+xml Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao Closed Access logo, derived from PLoS Open Access logo. This version with transparent background. http://commons.wikimedia.org/wiki/File:Closed_Access_logo_transparent.svg Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao
https://doi.org/10.1109/acsd.2...
Article . 2019 . Peer-reviewed
License: IEEE Copyright
Data sources: Crossref
image/svg+xml Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao Closed Access logo, derived from PLoS Open Access logo. This version with transparent background. http://commons.wikimedia.org/wiki/File:Closed_Access_logo_transparent.svg Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao
INRIA2
Conference object . 2019
Data sources: INRIA2
image/svg+xml Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao Closed Access logo, derived from PLoS Open Access logo. This version with transparent background. http://commons.wikimedia.org/wiki/File:Closed_Access_logo_transparent.svg Jakob Voss, based on art designer at PLoS, modified by Wikipedia users Nina and Beao
DBLP
Conference object
Data sources: DBLP
versions View all 4 versions
addClaim

This Research product is the result of merged Research products in OpenAIRE.

You have already added 0 works in your ORCID record related to the merged Research product.

Sheep in wolf's Clothing: Implementation Models for Dataflow Multi-Threaded Software

Authors: Didier, Keryan; Cohen, Albert; Potop-Butucaru, Dumitru; Gauffriau, Adrien;

Sheep in wolf's Clothing: Implementation Models for Dataflow Multi-Threaded Software

Abstract

La programmation concurrente est une discipline difficile, particulièrement dansun contexte de systèmes embarqués. Les threads, en particulier, sont un modèle de calcul non-déterministe et difficile à analyser dans le cas général. Heureusement, les logiciels embarquésmulti-threadés synchronisés par sémaphores sont souvent des implémentations de spécificationsfonctionnelles de haut niveau écrites dans un langage flot-de-données déterministe comme Scadeou (un sous-ensemble sûr de) Simulink. Dans ce cas, le processus d’implémentation devrait, nonseulement construire le code C multi-threadé de l’implémentation, mais avant tout un modèleplus riche exposant l’organisation du flot-de-données des calculs effectués par le code. De cemodèle, le code C peut être extrait par du simplepretty printing. En même temps, la structureflot-de-donnée facilite l’analyse. Nous proposons un langage pour la description de tels mod-èles d’implémentations qui exposent le comportement flot-de-donnée (la brebis) déguisé en unprogramme multi-threadé (le loup). Ce langage permet une représentation d’implémentations ef-ficaces avec ordonnancement pipeliné et allocation mémoire et synchronisations optimisées. Nousmontrons son application sur un cas d’étude de l’industrie aéronautique et sur une plateformemany-coeurs commerciale

Concurrent programming is notoriously difficult, especially in constrained embeddedcontexts. Threads, in particular, are wildly nondeterministic as a model of computation, anddifficult to analyze in the general case. Fortunately, it is often the case that multi-threaded,semaphore-synchronized embedded software implements high-level functional specifications writtenin a deterministic data-flow language such as Scade or (safe subsets of) Simulink. We claim thatin this case the implementation process should build not just the multi-threaded C code, but (firstand foremost) a richer model exposing the dataflow organization of the computations performed bythe implementation. From this model, the C code is extracted through selective pretty-printing,while knowledge of the data-flow organization facilitates analysis. We propose a language fordescribing such implementation models that expose the data-flow behavior (the sheep) hidingunder the form of a multi-threaded program (the wolf). The language allows the representationof efficient implementations featuring pipelined scheduling and optimized memory allocation andsynchronization. We show applicability on a large-scale industrial avionics case study and on acommercial many-core.

Country
France
Keywords

Scade, Lustre, Implementation model, Execution platform, [INFO.INFO-ES] Computer Science [cs]/Embedded Systems, [INFO.INFO-PL] Computer Science [cs]/Programming Languages [cs.PL], Multi thread, Synchronous languages, Kahn process network, Dataflow, [INFO.INFO-DC] Computer Science [cs]/Distributed, Parallel, and Cluster Computing [cs.DC], Correctness, Semantic preservation

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    3
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
3
Average
Average
Average