Mathematizing C++ Concurrency
Add to your list(s)
Download to your calendar using vCal
If you have a question about this talk, please contact Sam Staton.
New versions of C+ (C+0x) and of C (C1X) will have new concurrency features,
aiming to support high-performance code with well-defined semantics. Unfortunately,
as we near the end of the long standardization process, not all has been
well. Unsurprisingly, the prose specification style of the draft standards
is poorly suited to describe the complex design of the relaxed memory model,
and in fact there have been significant problems.
I will discuss work on formalization of the memory model, what was broken,
and some resulting improvements to the C++0x draft standard. In addition
I will present a tool, Cppmem, for graphically exploring the semantics of
small concurrent C++0x programs, and describe a proof of the correctness
of a compilation strategy targeting x86-TSO.
This is joint work with Scott Owens, Susmit Sarkar, Peter Sewell, and Tjark
Weber.
This talk is part of the Semantics Lunch (Computer Laboratory) series.
This talk is included in these lists:
Note that ex-directory lists are not shown.
|