Shared variables and data races in C++11

Subscribers:
344,000
Published on ● Video Link: https://www.youtube.com/watch?v=owmKOUWUfoo



Duration: 1:21:40
219 views
2


C++11 and C11 added threads to the respective languages. In the process they gave much more precise semantics to shared variables. Like a number of earlier standards, but unlike Java, these languages give semantics only to programs without data races. Compared to those earlier standards, they are much clearer on what that means, and remove the motivation for nonetheless writing code with data races. I will give an overview of the C++11 shared variable semantics or memory model, illustrate some of the subtleties around data races, and explain both why data race semantics were left undefined, and why, even in practice, it is never reasonable to rely on a C11 or C++11 program with data races. In particular, I will argue that programs with essentially all kinds of so-called "benign" data races are subject to future "miscompilation" by entirely reasonable compilers.




Other Videos By Microsoft Research


2016-07-28Approximating the Expansion Profile and Almost Optimal Local Graph Clustering
2016-07-28Stochastic Dual Coordinate Ascent and its Proximal Extension for Regularized Loss Minimization
2016-07-28A Practical Approach to Reduce the Power Consumption of LCD Displays
2016-07-28CryptDB: Processing Queries on an Encrypted Database
2016-07-28Performing Time, Space and Light
2016-07-28Probabilistic Methods for Efficient Search & Statistical Learning in Extremely HighDimensional Data
2016-07-28Quantum Computation for Quantum Chemistry: Status, Challenges, and Prospects - Session 4
2016-07-28Quantum Computation for Quantum Chemistry: Status, Challenges, and Prospects - Session 2
2016-07-28Quantum Computation for Quantum Chemistry: Status, Challenges, and Prospects - Session 1
2016-07-28Bug Finding Techniques for Programs with Infinitely Many States
2016-07-28Shared variables and data races in C++11
2016-07-28Verifying the integrity of peripherals' firmware
2016-07-28Privacy, Audit and Accountability
2016-07-28One Mouse per Child
2016-07-28The Benefits Of Being Out Of Focus: Making the Most of Lens PSF
2016-07-28Algorithms for bipartite matching problems with connections to sparsification and streaming
2016-07-28MIMD on GPU
2016-07-28The Case for Continuous Time
2016-07-28Starfish: A MADDER and Self-tuning System for Big Data Analytics
2016-07-28Spatial Coding for Large-scale Partial-duplicate Image Search
2016-07-28Testing Atomicity of Composed Concurrent Operations & Automatic Fine-Grain Locking



Tags:
microsoft research