Publications

Detailed Information

Simplifying Reasoning under Weak Memory Concurrency : 느슨한 메모리 프로그램을 쉽게 이해하기

DC Field Value Language
dc.contributor.advisor허충길-
dc.contributor.author조민기-
dc.date.accessioned2023-11-20T04:24:42Z-
dc.date.available2023-11-20T04:24:42Z-
dc.date.issued2023-
dc.identifier.other000000179033-
dc.identifier.urihttps://hdl.handle.net/10371/196506-
dc.identifier.urihttps://dcollection.snu.ac.kr/common/orgView/000000179033ko_KR
dc.description학위논문(박사) -- 서울대학교대학원 : 공과대학 컴퓨터공학부, 2023. 8. 허충길.-
dc.description.abstract본 논문에서는 느슨한 메모리에서 동시성 프로그램을 구현하는 것을 쉽게 만드는 방법을 제시한다. 쓰레드들이 같은 메모리에 접근하는 동시성 프로그램에서는 하드웨어와 컴파일러의 최적화 덕분에 굉장히 비직관적인(혹은, 느슨한) 행동이 일어난다. 이러한 느슨한 메모리 행동까지 전부 고려해서 프로그램을 올바르게 구현하는 것은 굉장히 어렵다. 우리는 느슨한 메모리 행동을 거의 고려하지 않고도 쉽고 프로그램을 구현할 수 있게 만드는 두 이론을 개발했다. 먼저, 데이터 경쟁이 없는 메모리 영역에서는 느슨한 메모리 행동이 일어나지 않는다는 부분적 무경쟁 보장을(Local Data-Race-Freedom Guarantees) 엄밀히 나타내고 증명했다. 이를 통해 데이터 경쟁을 피하는 프로그래머는 느슨한 메모리를 고려하지 않고도 동시성 프로그램을 올바르게 이해하고 작성할 수 있다. 다음으로, 동시성 프로그램을 최적화할 때 느슨한 메모리 행동과 동시성을 무시할 수 있게 해주는 이론을 개발했다. 느슨한 메모리의 복잡성을 전혀 가지지 않으며 싱글 쓰레드만 있는 것처럼 동작하는 모델 SEQ를 개발했고, 느슨한 메모리 동시성에서 올바른 최적화를 구현하기 위해서는 SEQ 위에서의 실행만 고려하면 된다는 것을 보였다. 이 결과들은 느슨한 메모리 행동을 설명하는 모델인 약속 메모리 모델을(Promising Semantics) 통해 옳다는 것이 검증되었다.-
dc.description.abstractThis thesis presents ways to easily implement concurrent programs in weak memory. In shared memory concurrency, programs have counterintuitive (or weak) behavior due to hardware and compiler optimizations. It is difficult to implement a correct program with a full understanding of weak behavior. I develop two theories that simplify reasoning under weak memory concurrency. First, I formalize and prove local data-race-freedom guarantees that ensure strong semantics for locations accessed by non-racy instructions. These allow programmers who avoid data races to understand and write concurrent programs without understanding of weak behavior. Next, I show that sequential reasoning is adequate and sufficient for establishing soundness of compiler optimizations under weak memory. I introduce a sequential model SEQ which has no weak behavior and no concurrency, and show that correct optimizations under SEQ executions are also correct under weak memory. Our results are fully verified against a weak memory model, the promising semantics.-
dc.description.tableofcontents1 Prologue 1
1.1 Introduction 1
1.2 Background: The Promising Semantics 2
1.2.1 The Promising Semantics 2
1.2.2 Additional Examples of the Promising Semantics 9
2 Local Data-Race-Freedom Guarantees for Program Writers 3
2.1 Introduction: The Need for Local DRF 3
2.2 Local DRF in Weak Memory Models 16
2.2.1 Local DRF w.r.t. an "In-Order" Semantics 16
2.2.2 Local DRF w.r.t. RA and SC 22
2.3 Local DRF Guarantees 26
2.3.1 Local DRF-PF 26
2.3.2 Local DRF-RA 29
2.3.3 Local DRF-SC 32
2.3.4 Time-wise Local DRF Guarantees 33
2.4 Applying LDRF for Modular Reasoning 36
2.4.1 Reasoning About Client Code 37
2.4.2 Reasoning About Library Code 40
2.5 Mapping PS2.1 to Hardware 41
2.6 A Counterexample to Local DRF Guarantees in PS 46
2.7 Conclusion and Related Work 47
3 Sequential Reasoning for Compiler Writers 51
3.1 Introduction: Optimizations under Weak Memory 51
3.2 The Sequential Permission Machine 56
3.3 Advanced Behavior Refinement 68
3.4 An Overview of a Certified Optimizer 74
3.5 A Certified Optimizer in Detail 78
3.5.1 Optimizations in Detail 78
3.5.2 Simulation Relation in SEQ 81
3.6 Non-atomics in the Promising Semantics 82
3.7 Adequacy of Sequential Reasoning 87
3.8 Conclusion and Related Work 90
Bibliography 95
초록 105
-
dc.format.extent106-
dc.language.isokor-
dc.publisher서울대학교 대학원-
dc.subjectRelaxed Memory Concurrency-
dc.subjectOperational Semantics-
dc.subjectData Race Freedom-
dc.subjectCompiler Optimization-
dc.subjectVerified Compilation-
dc.subject.ddc621.39-
dc.titleSimplifying Reasoning under Weak Memory Concurrency-
dc.title.alternative느슨한 메모리 프로그램을 쉽게 이해하기-
dc.typeThesis-
dc.typeDissertation-
dc.contributor.AlternativeAuthorMinki Cho-
dc.contributor.department공과대학 컴퓨터공학부-
dc.description.degree박사-
dc.date.awarded2023-08-
dc.contributor.major프로그래밍 언어-
dc.identifier.uciI804:11032-000000179033-
dc.identifier.holdings000000000050▲000000000058▲000000179033▲-
Appears in Collections:
Files in This Item:

Altmetrics

Item View & Download Count

  • mendeley

Items in S-Space are protected by copyright, with all rights reserved, unless otherwise indicated.

Share