2021
DOI: 10.1007/s10009-020-00601-z
|View full text |Cite
|
Sign up to set email alerts
|

Correct program parallelisations

Abstract: A commonly used approach to develop deterministic parallel programs is to augment a sequential program with compiler directives that indicate which program blocks may potentially be executed in parallel. This paper develops a verification technique to reason about such compiler directives, in particular to show that they do not change the behaviour of the program. Moreover, the verification technique is tool-supported and can be combined with proving functional correctness of the program. To develop our verifi… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
2
0
2

Year Published

2021
2021
2023
2023

Publication Types

Select...
4
2
1

Relationship

0
7

Authors

Journals

citations
Cited by 9 publications
(7 citation statements)
references
References 20 publications
0
2
0
2
Order By: Relevance
“…We are keen to explore the combination of both approaches. A first step would be to mix Vey-Mont with the VerCors-based work of Blom et al [10] on verification of loop parallelisation. Beyond that, it is interesting to extend VeyMont with complementary techniques.…”
Section: Future Workmentioning
confidence: 99%
“…We are keen to explore the combination of both approaches. A first step would be to mix Vey-Mont with the VerCors-based work of Blom et al [10] on verification of loop parallelisation. Beyond that, it is interesting to extend VeyMont with complementary techniques.…”
Section: Future Workmentioning
confidence: 99%
“…Papers [3,18] contribute to the design of correct-by construction high-level models by defining a highlevel modelling formalism [18] and by providing an approach for debugging CPS models [3]. Papers [9,14,22,24,28] contribute to the design and proof of domain-specific abstractions. They provide techniques for ensuring the correctness of randomised consensus protocols [9], program block parallelisation [14], usage control policies [22], and for ensuring optimality of partition schedules [24] and energy consumption [28].…”
Section: This Issuementioning
confidence: 99%
“…Finally, an evolutionary algorithm for parameter exploration is applied that generalises the yes/no verdict of the schedulability question into a numeric fitness evaluation. -The paper "Correct Program Parallelisations" by Blom, Darabi, Huisman, and Safari [14] is an extension of the FASE 2015 and NFM 2017 [13,15] papers by the first three authors. This paper presents a verification technique to reason about the correctness of compiler directives indicating which program blocks may potentially be executed in parallel without changing the behaviour of the program.…”
Section: This Issuementioning
confidence: 99%
“…Другим примером является специальная конструкция в языке Applicative Common Lisp [24]. Операционная семантика для расширения языка C-like конструкциями OpenMP была предложена в работе [25]. Такая особенность Sisal, как конструкции, подобные break, является преимуществом Sisal-циклов относительно рассмотренных видов итераций.…”
Section: Introductionunclassified