This issue is to keep track of discussions about adding new benchmarks to the repository exposing weak memory behaviours and the creation of a new SVCOMP category for weak memory models.
On 25/04/2021 we had a meeting to discuss the step forward. The following people participated:
- Dirk Beyer
- Zsófia Ádám
- Levente Bajczi
- Matthias Heizmann
- Dominik Klumpp
- Henrich Lauko
- Hernan Ponce de Leon
In that meeting we agreed on the following:
- we will initially focus our efforts in x86
- we will use C11 atomic library for the benchmarks
Topics that are still open for discussion:
- we need to agree on which formalisation of x86 we will use. The agreement is that we should have both an axiomatic and operational semantics definitions which have been shown equivalents: this paper seems to give us what we want.
- we need to decide how to handle hardware specific instructions (e.g. fences and compare-and-swap). Atomics builtins might be an option. There was another (more general) proposal using bell extensions.
- witnesses: we need witness validators. MetaVal was proposed as an alternative: it requires coming up with a program transformation. I'm working on support for witness validation in Dartagnan. It will probably also handles wmm but there are some things about witnesses that requires some discussion.
This issue is to keep track of discussions about adding new benchmarks to the repository exposing weak memory behaviours and the creation of a new SVCOMP category for weak memory models.
On 25/04/2021 we had a meeting to discuss the step forward. The following people participated:
In that meeting we agreed on the following:
Topics that are still open for discussion: