> What's the motivation for doing this vs using an off-the-shelf record and
replay tool like rr?
Yeah, that's a really good question. This is just the rough idea for my
project and we're still shaping out the details.
Some high level points:
- As you already mentioned, RR sequentializes execution of threads and
processes, the more parallel we are, the more costly RR is. We hope to
maintain parallel execution.
- RR is a complete solution, it catches all sources of nondeterminism. If
we think of testing, we believe for a given test, the main sources of
nondeterminism should be non-det thread scheduling, which we hope to
determinize via record-and-replay channels. Any remaining nondeterminism
will be from other sources which we probably want to track down, and ask if
this source should really be nondeterministic? RR is a little too good at
hiding these miscellaous sources from us.
- I hadn't thought about the non-Linux portability, but this could
certainly be an advantage!
- We hope to make our record-and-replay channels general, so they may be
useful to the wider Rust ecosystem.
Omar.
On Mon, Jun 3, 2019 at 5:58 PM Robert O'Callahan <
rob...@ocallahan.org>
wrote:
> _______________________________________________
> dev-servo mailing list
>
dev-...@lists.mozilla.org
>
https://lists.mozilla.org/listinfo/dev-servo
>