5 results on '"Sung-Hwan Lee"'
Search Results
2. Revamping hardware persistency models: view-based and axiomatic persistency models for Intel-x86 and Armv8
- Author
-
Jeehoon Kang, Kyeongmin Cho, Azalea Raad, and Sung-Hwan Lee
- Subjects
Model checking ,Computer science ,Semantics (computer science) ,business.industry ,020206 networking & telecommunications ,020207 software engineering ,02 engineering and technology ,View based ,Synchronization (computer science) ,0202 electrical engineering, electronic engineering, information engineering ,x86 ,Non-volatile random-access memory ,business ,Axiom ,Dram ,Computer hardware - Abstract
Non-volatile memory (NVM) is a cutting-edge storage technology that promises the performance of DRAM with the durability of SSD. Recent work has proposed several persistency models for mainstream architectures such as Intel-x86 and Armv8, describing the order in which writes are propagated to NVM. However, these models have several limitations; most notably, they either lack operational models or do not support persistent synchronization patterns. We close this gap by revamping the existing persistency models. First, inspired by the recent work on promising semantics, we propose a unified operational style for describing persistency using views, and develop view-based operational persistency models for Intel-x86 and Armv8, thus presenting the first operational model for Armv8 persistency. Next, we propose a unified axiomatic style for describing hardware persistency, allowing us to recast and repair the existing axiomatic models of Intel-x86 and Armv8 persistency. We prove that our axiomatic models are equivalent to the authoritative semantics reviewed by Intel and Arm engineers. We further prove that each axiomatic hardware persistency model is equivalent to its operational counterpart. Finally, we develop a persistent model checking algorithm and tool, and use it to verify several representative examples.
- Published
- 2021
- Full Text
- View/download PDF
3. Modular data-race-freedom guarantees in the promising semantics
- Author
-
Sung-Hwan Lee, Ori Lahav, Minki Cho, and Chung-Kil Hur
- Subjects
Programming language ,Semantics (computer science) ,Computer science ,business.industry ,Concurrency ,Optimizing compiler ,020207 software engineering ,02 engineering and technology ,Modular design ,computer.software_genre ,Operational semantics ,Modular reasoning ,Race (biology) ,0202 electrical engineering, electronic engineering, information engineering ,020201 artificial intelligence & image processing ,business ,computer - Abstract
Local data-race-freedom guarantees, ensuring strong semantics for locations accessed by non-racy instructions, provide a fruitful methodology for modular reasoning in relaxed memory concurrency. We observe that standard compiler optimizations are in inherent conflict with such guarantees in general fully-relaxed memory models. Nevertheless, for a certain strengthening of the promising model by Lee et al. that only excludes relaxed RMW-store reorderings, we establish multiple useful local data-racefreedom guarantees that enhance the programmability aspect of the model.We also demonstrate that the performance price of forbidding these reorderings is insignificant. To the best of our knowledge, these results are the first to identify a model that includes the standard concurrency constructs, supports the efficient mapping of relaxed reads and writes to plain hardware loads and stores, and yet validates several local data-race-freedom guarantees. To gain confidence, our results are fully mechanized in Coq.
- Published
- 2021
- Full Text
- View/download PDF
4. Promising 2.0: global optimizations in relaxed memory concurrency
- Author
-
Anton Podkopaev, Minki Cho, Chung-Kil Hur, Viktor Vafeiadis, Sung-Hwan Lee, Ori Lahav, and Soham Chakraborty
- Subjects
Task (computing) ,Computer science ,Semantics (computer science) ,Concurrency ,Component (UML) ,Concurrent computing ,Optimizing compiler ,Parallel computing ,Thread (computing) ,Operational semantics - Abstract
For more than fifteen years, researchers have tried to support global optimizations in a usable semantics for a concurrent programming language, yet this task has been proven to be very difficult because of (1) the infamous “out of thin air” problem, and (2) the subtle interaction between global and thread-local optimizations. In this paper, we present a solution to this problem by redesigning a key component of the promising semantics (PS) of Kang et al. Our updated PS 2.0 model supports all the results known about the original PS model (i.e., thread-local optimizations, hardware mappings, DRF theorems), but additionally enables transformations based on global value-range analysis as well as register promotion (i.e., making accesses to a shared location local if the location is accessed by only one thread). PS 2.0 also resolves a problem with the compilation of relaxed RMWs to ARMv8, which required an unintended extra fence.
- Published
- 2020
- Full Text
- View/download PDF
5. Promising-ARM/RISC-V: a simpler and faster operational concurrency model
- Author
-
Sung-Hwan Lee, Jeehoon Kang, Chung-Kil Hur, Jean Pichon-Pharabod, and Christopher Pulte
- Subjects
Record locking ,Programming language ,Computer science ,Concurrency ,media_common.quotation_subject ,020207 software engineering ,02 engineering and technology ,computer.software_genre ,Operational semantics ,4613 Theory Of Computation ,46 Information and Computing Sciences ,Debugging ,RISC-V ,0202 electrical engineering, electronic engineering, information engineering ,Concurrency semantics ,020201 artificial intelligence & image processing ,Implementation ,computer ,Axiom ,media_common - Abstract
For ARMv8 and RISC-V, there are concurrency models in two styles, extensionally equivalent: axiomatic models, expressing the concurrency semantics in terms of global properties of complete executions; and operational models, that compute incrementally. The latter are in an abstract microarchitectural style: they execute each instruction in multiple steps, out-of-order and with explicit branch speculation. This similarity to hardware implementations has been important in developing the models and in establishing confidence, but involves complexity that, for programming and model-checking, one would prefer to avoid. We present new more abstract operational models for ARMv8 and RISC-V, and an exploration tool based on them. The models compute the allowed concurrency behaviours incrementally based on thread-local conditions and are significantly simpler than the existing operational models: executing instructions in a single step and (with the exception of early writes) in program order, and without branch speculation. We prove the models equivalent to the existing ARMv8 and RISC-V axiomatic models in Coq. The exploration tool is the first such tool for ARMv8 and RISC-V fast enough for exhaustively checking the concurrency behaviour of a number of interesting examples. We demonstrate using the tool for checking several standard concurrent datastructure and lock implementations, and for interactively stepping through model-allowed executions for debugging.
- Published
- 2019
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.