From C/C++11 to Power and ARM: What is Shared-Memory Concurrency Anyway?

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



Duration: 1:03:23
596 views
8


Shared-memory concurrent programming and verification traditionally assumes Sequential Consistency, but real-world hardware only provides relaxed consistency models. Furthermore, the consistency models of different hardware architectures vary widely and have often been poorly defined, while programming language models (aiming to abstract from hardware details) are different again. The IBM Power line of multiprocessors has long been recognized to have one of the most complex and subtle memory consistency models, and ARM multiprocessors have a broadly similar model. Together, they directly inspired features of the new C/C++ concurrency model in ISO C/C++11. However, it was an open question among the ISO concurrency committee whether the model even made sense, or could be implemented. I will describe my work in devising mathematically precise abstract models for ARM and Power multiprocessors, which has shed light on hitherto unknown programmer-observable behaviour. The model was developed based on extensive experiments and on discussion with IBM and ARM architects; it is expressed as an abstract machine, abstracting as much as possible (but no more) from microarchitectural implementation details. I will also describe proofs that show that a recommended implementation strategy for C/C++11 concurrency to Power is sound. All compilers will have to implement such a strategy, and furthermore, all have to agree on a common strategy for linking to be sound. This proof builds confidence in both models, and also provides insight into how the two very different models really work.




Other Videos By Microsoft Research


2016-07-27Approximating k-Median via Pseudo-Approximation
2016-07-27Handling Multitude of Nash Equilibria in Voting Games
2016-07-27Towards Verification of Behavioral Software Contracts
2016-07-27Quantum Computation for Quantum Chemistry: Status, Challenges and Prospects - Session 5
2016-07-27Markov Type and the Multi-scale Geometry of Metric Spaces - How Well Can Martingales Aim?
2016-07-27Content Everywhere: The Challenges of a Mobile, Wireless and Social Viewership
2016-07-27Computer Aided Translation
2016-07-27Inference and Learning with Random Maximum A-Posteriori Perturbations
2016-07-279.5 Theses on the Power and Efficacy of Gamification
2016-07-27Innovation in Open Networks and the MIT Media Lab
2016-07-27From C/C++11 to Power and ARM: What is Shared-Memory Concurrency Anyway?
2016-07-27Semantic Awareness for Automatic Image Interpretation
2016-07-27Overview of �Big Data� Research at TU Berlin
2016-07-27Information Extraction Crossing Language, Robustness and Domain Barriers
2016-07-27HMM-based Speech Synthesis: Fundamentals and Its Recent Advances
2016-07-27Embedded Systems and Kinetic Art: A Natural Collaboration
2016-07-27Proactive Health Management Using In-Home Sensing and Recognition Technology
2016-07-27Grand Challenges of Human-Robot Interaction in Space
2016-07-27Posted Prices Exchange for Display Advertising Contracts
2016-07-27Tensor Decompositions for Learning Hidden Variable Models
2016-07-27BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking



Tags:
microsoft research