An Operational Semantic Basis for Building an OpenMP Data Race Checker

Simone Atzeni, G. Gopalakrishnan
{"title":"An Operational Semantic Basis for Building an OpenMP Data Race Checker","authors":"Simone Atzeni, G. Gopalakrishnan","doi":"10.1109/IPDPSW.2018.00074","DOIUrl":null,"url":null,"abstract":"Despite the popularity and growing importance of OpenMP, a formal characterization of its concurrency is lacking. In this paper, we provide such a characterization through an operational semantics. Semantic descriptions of languages are written to serve specific end goals, and hence are abstractions of fully detailed implementations. We have developed our semantics to help with the construction of a novel OpenMP data race checker called Sword that collects execution traces efficiently, and subjects the traces to offline analysis: the semantics are used in the latter phase. Key contributions of this paper are: (1) defining OpenMP's concurrency rigorously through a precise set of rules, (2) helping systematically design Sword's offline analysis phase by ensuring that the OpenMP events mentioned in our semantics are exactly those that can also be collected through OMPT, a standard event collection mechanism for OpenMP, and (3) characterizing the benefits of this design. We conclude with the message that developing formal semantics for concurrent languages must not be viewed as an esoteric diversion, but as standard practice, as such semantics can help clearly define the language, help rigorously analyze proposed future extensions to it, and also help reveal lurking pitfalls, especially in this era where multiple concurrency formalisms are often used together.","PeriodicalId":219816,"journal":{"name":"2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)","volume":"144 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-08-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IPDPSW.2018.00074","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

Despite the popularity and growing importance of OpenMP, a formal characterization of its concurrency is lacking. In this paper, we provide such a characterization through an operational semantics. Semantic descriptions of languages are written to serve specific end goals, and hence are abstractions of fully detailed implementations. We have developed our semantics to help with the construction of a novel OpenMP data race checker called Sword that collects execution traces efficiently, and subjects the traces to offline analysis: the semantics are used in the latter phase. Key contributions of this paper are: (1) defining OpenMP's concurrency rigorously through a precise set of rules, (2) helping systematically design Sword's offline analysis phase by ensuring that the OpenMP events mentioned in our semantics are exactly those that can also be collected through OMPT, a standard event collection mechanism for OpenMP, and (3) characterizing the benefits of this design. We conclude with the message that developing formal semantics for concurrent languages must not be viewed as an esoteric diversion, but as standard practice, as such semantics can help clearly define the language, help rigorously analyze proposed future extensions to it, and also help reveal lurking pitfalls, especially in this era where multiple concurrency formalisms are often used together.
构建OpenMP数据竞争检查器的操作语义基础
尽管OpenMP很受欢迎,而且越来越重要,但是缺乏对其并发性的正式描述。在本文中,我们通过操作语义提供了这样的表征。语言的语义描述是为特定的最终目标而编写的,因此是对完全详细实现的抽象。我们开发了自己的语义,以帮助构建一个名为Sword的新型OpenMP数据竞争检查器,该检查器有效地收集执行跟踪,并对跟踪进行脱机分析:该语义用于后一阶段。本文的主要贡献是:(1)通过一组精确的规则严格定义OpenMP的并发性,(2)通过确保我们语义中提到的OpenMP事件正是那些也可以通过OMPT (OpenMP的标准事件收集机制)收集的事件,帮助系统地设计Sword的离线分析阶段,以及(3)描述这种设计的好处。我们得出的结论是,为并发语言开发形式化语义不应被视为一种深奥的转移,而应视为标准实践,因为这样的语义可以帮助清晰地定义语言,帮助严格分析对其提出的未来扩展,也有助于揭示潜在的陷阱,特别是在这个经常同时使用多种并发形式化的时代。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信