×

定义和验证持久不透明度:持久软件事务内存的正确性。 (英语) Zbl 1511.68072号

Gotsman,Alexey(编辑)等人,分布式对象、组件和系统的形式化技术。第40届IFIP WG 6.1国际会议,FORTE 2020,作为第15届分布式计算技术国际联合会议的一部分,于2020年6月15日至19日在马耳他瓦莱塔举行。诉讼程序。查姆:斯普林格。莱克特。注释计算。科学。12136,39-58(2020)。
摘要:非易失性存储器(NVM),又称持久性存储器,是一种新的内存范例,即使在断电后也能保存其内容。NVM的预期普遍性激发了人们对设计新概念的兴趣,这些新概念确保了并发编程抽象在面对持久性时的正确性。到目前为止,这已经导致了许多持久并发数据结构的设计,这些结构的构建是为了满足相关的正确性概念:持久线性化能力。
在本文中,我们将持久并发正确性的原理转移到软件事务存储(STM)领域。软件事务性内存算法允许并发访问共享状态。与并发数据结构的线性化能力一样,不透明度是STM正确性的既定概念。首先,我们提供了持久不透明度的新定义,扩展了不透明度以处理NVM环境中的崩溃和恢复。其次,我们开发了现有STM算法的持久不透明版本,即事务互斥锁(TML)。第三,我们设计了一种持久不透明度的证明技术,该技术基于TML和持久不透明度操作特征之间的细化,并采用TMS2规范。最后,我们应用这个证明技术来证明TML的持久版本确实是持久不透明的。正确性的证明在Isabelle内部是机械化的。
关于整个系列,请参见[Zbl 1496.68021号]。

理学硕士:

68号30 软件工程的数学方面(规范、验证、度量、需求等)
68甲19 其他编程范式(面向对象、顺序、并发、自动等)
PDF格式BibTeX公司 XML格式引用

参考文献:

[1] Armstrong,A.,Dongol,B.:混合事务内存的模块化不透明度验证。收录:Bouajjani,A.,Silva,A.(编辑)FORTE 2017。LNCS,第10321卷,第33-49页。查姆施普林格(2017)。https://doi.org/10.1007/978-3-319-60225-7_3 ·Zbl 1489.68137号 ·doi:10.1007/978-3-319-60225-73
[2] Armstrong,A.,Dongol,B.,Doherty,S.:通过线性化证明不透明度:一种完善的方法。收录:Bouajjani,A.,Silva,A.(编辑)FORTE 2017。LNCS,第10321卷,第50-66页。查姆施普林格(2017)。https://doi.org/10.1007/978-3-319-60225-7_4 ·Zbl 1489.68138号 ·doi:10.1007/978-3-319-60225-74
[3] Attiya,H.,Gotsman,A.,Hans,S.,Rinetzky,N.:事务内存中实时事务的安全:TMS是必要的,也是充分的。收录:Kuhn,F.(编辑)DISC 2014。LNCS,第8784卷,第376-390页。斯普林格,海德堡(2014)。https://doi.org/10.1007/978-3-662-45174-8_26 ·doi:10.1007/978-3-662-45174-8_26
[4] Ben-David,N.、Blelloch,G.E.、Friedman,M.、Wei,Y.:故障持久内存上的无延迟并发。摘自:第31届ACM算法与架构并行研讨会,第253-264页(2019年)
[5] Bila,E.,Doherty,S.,Dongol,B.,Derrick,J.,Schellhorn,G.,Wehrheim,H.:定义和验证持久不透明性:持久软件事务内存的正确性(2020)。https://arxiv.org/abs/2004.08200
[6] Chakrabarti,D.R.,Boehm,H.J.,Bhandari,K.:阿特拉斯:利用锁实现非易失性内存一致性。ACM SIGPLAN非。49(10), 433-452 (2014) ·doi:10.1145/2714064.2660224
[7] Coburn,J.等人:Nv堆:使用下一代非易失性存储器使持久对象快速安全。ACM SIGARCH计算。阿基特。新闻39(1),105-118(2011)·doi:10.1145/1961295.1950380
[8] Dalessandro,L.,Dice,D.,Scott,M.,Shavit,N.,Spear,M.:事务互斥锁。收录于:D'Ambra,P.、Guarracino,M.、Talia,D.(编辑)2010年《欧洲-保时捷》。LNCS,第6272卷,第2-13页。施普林格,海德堡(2010)。https://doi.org/10.1007/978-3-642-15291-7_2 ·Zbl 1395.68086号 ·doi:10.1007/978-3642-15291-72
[9] Dalesandro,L.、Spear,M.F.、Scott,M.L.:NORec:通过废除所有权记录简化STM。收录:Govindarajan,R.,Padua,D.A.,Hall,M.W.(编辑)PPoPP,第67-78页。ACM(2010)
[10] Derrick,J.,Doherty,S.,Dongol,B.,Schellhorn,G.,Travkin,O.,Wehrheim,H.:不透明的机械化证明:两种技术的比较。形式方面计算。30(5), 597-625 (2017). https://doi.org/10.1007/s00165-017-0433-3 ·Zbl 1395.68186号 ·doi:10.1007/s00165-017-0433-3
[11] Derrick,J.,Doherty,S.,Dongol,B.,Schellhorn,G.,Wehrheim,H.:验证持久并发数据结构的正确性。收录:ter Beek,M.H.,McIver,A.,Oliveira,J.N.(编辑)FM 2019。LNCS,第11800卷,第179-195页。查姆施普林格(2019)。https://doi.org/10.1007/978-3-030-30942-8_12 ·Zbl 1519.68133号 ·doi:10.1007/978-3-030-30942-812
[12] Derrick,J.,Dongol,B.,Schellhorn,G.,Travkin,O.,Wehrheim,H.:验证事务互斥锁的不透明性。收录:Björner,N.,de Boer,F.(编辑)FM 2015。LNCS,第9109卷,第161-177页。查姆施普林格(2015)。https://doi.org/10.1007/978-3-319-19249-9_11 ·Zbl 1427.68190号 ·文件编号:10.1007/978-3-319-19249-9_11
[13] Dice,D.,Shalev,O.,Shavit,N.:事务锁定II。收录:Dolev,S.(编辑)DISC 2006。LNCS,第4167卷,第194-208页。施普林格,海德堡(2006)。https://doi.org/10.1007/11864219_14 ·doi:10.1007/11864219_14
[14] Doherty,S.、Dongol,B.、Derrick,J.、Schellhorn,G.、Wehrheim,H.:证明悲观STM的不透明性。收录:Fatourou,P.,Jiménez,E.,Pedone,F.(编辑)OPODIS。LIPIcs,第70卷,第35:1-35:17页。达格斯图尔宫(Schloss Dagstuhl)-莱布尼兹·泽特鲁姆(Leibniz-Zentrum für Informatik)(2016年)·Zbl 1432.68070号
[15] Doherty,S.、Groves,L.、Luchangco,V.、Moir,M.:正式指定和验证事务内存。正式Asp。计算。25(5), 769-799 (2013) ·Zbl 1298.68168号 ·doi:10.1007/s00165-012-0225-8
[16] Dongol,B.,Jagadeesan,R.,Riely,J.:轻松内存架构中的事务。PACMPL 2(POPL),18:1-18:29(2018)
[17] Dongol,B.,Derrick,J.:验证线性化:一项比较调查。ACM计算。Surv公司。48(2), 19:1-19:43 (2015) ·doi:10.1145/2796550
[18] Felber,P.,Fetzer,C.,Riegel,T.:基于文字的软件事务性内存的动态性能调优。摘自:第13届ACM SIGPLAN并行编程原理与实践研讨会论文集,第237-246页(2008)
[19] Guerraoui,R.,Kapalka,M.:关于事务性记忆的正确性。摘自:Chatterjee,S.,Scott,M.L.(编辑)PPOPP,第175-184页。ACM(2008)
[20] Guerraoui,R.,Kapalka,M.:交易记忆原理。分布式计算理论综合讲座。摩根&克莱普尔出版社(2010)·Zbl 1242.68056号
[21] Herlihy,M.,Wing,J.M.:线性化:并发对象的正确性条件。ACM TOPLAS 12(3),463-492(1990)·数字对象标识代码:10.1145/78969.78972
[22] Izraelevitz,J.、Mendes,H.、Scott,M.L.:全系统崩溃故障模型下持久内存对象的线性化。收录人:Gavoille,C.,Ilcinkas,D.(编辑)DISC 2016。LNCS,第9888卷,第313-327页。斯普林格,海德堡(2016)。https://doi.org/10.1007/978-3-662-53426-7_23 ·doi:10.1007/978-3-662-53426-7_23
[23] Izraelevitz,J.、Kelly,T.、Kolli,A.:通过justdo日志进行故障原子持久性内存更新。ACM SIGARCH计算。阿基特。新闻44(2),427-442(2016)·doi:10.1145/2980024.2872410
[24] Joshi,A.、Nagarajan,V.、Cintra,M.、Viglas,S.:DHTM:持久硬件事务性内存。摘自:2018年ACM/IEEE第45届国际计算机体系结构年会(ISCA),第452-465页。IEEE(2018)
[25] Joshi,A.,Nagarajan,V.,Viglas,S.,Cintra,M.:原子:通过硬件日志记录非易失性内存中的原子耐久性。2017年IEEE高性能计算机体系结构国际研讨会(HPCA),第361-372页。IEEE(2017)
[26] Lesani,M.,Luchangco,V.,Moir,M.:取而代之的是不透明度。In:交易记忆理论研讨会(2012年)
[27] Lu,Y.,Shu,J.,Sun,L.,Mutlu,O.:持久内存的松散排序一致性。2014年IEEE第32届国际计算机设计会议(ICCD),第216-223页。IEEE(2014)
[28] Lynch,N.,Vaandrager,F.:正向和反向模拟。Inf.计算。121(2), 214-233 (1995) ·Zbl 0834.68123号 ·doi:10.1006/inco.1995.1134
[29] Lynch,N.A.,Tuttle,M.R.:分布式算法的层次正确性证明。收录于:PODC,第137-151页。ACM,纽约(1987)
[30] Müller,O.:I/O自动机及其以外:Isabelle中的时序逻辑和抽象。收录:Grundy,J.,Newey,M.(编辑)TPHOL,第331-348页。斯普林格,海德堡(1998)·Zbl 0927.03024号
[31] Nalli,S.、Haria,S.,Hill,M.D.、Swift,M.M.、Volos,H.、Keeton,K.:耳语持续记忆使用分析。ACM SIGPLAN非。52(4), 135-148 (2017) ·数字对象标识代码:10.1145/3093336.3037730
[32] Nipkow,T.、Wenzel,M.、Paulson,L.C.(编辑):Isabelle/HOL。LNCS,第2283卷。斯普林格,海德堡(2002)。https://doi.org/10.1007/3-540-45949-9 ·Zbl 1097.68632号 ·doi:10.1007/3-540-45949-9
[33] Olson,M.A.,Bostic,K.,Seltzer,M.I.:伯克利DB。收录于:USENIX年度技术会议,FREENIX轨道,第183-191页(1999)
[34] Raad,A.、Wickerson,J.、Vafeiadis,V.:从头开始的弱持久语义:形式化ARMV8和事务模型的持久语义。PACMPL 3(OOPSLA),135:1-135:27(2019)
[35] Raad,A.,Vafeiadis,V.:弱记忆的持久性语义:将纪元持久性与TSO记忆模型相结合。PACMPL 2(OOPSLA),137:1-137:27(2018)
[36] Sears,R.,Brewer,E.,Brewe,E.,布鲁尔,E.:停滞:灵活的事务存储。摘自:第七届操作系统设计与实现研讨会论文集,第29-44页。USENIX协会(2006年)
[37] Volos,H.、Tack,A.J.、Swift,M.M.:Mnemosyne:轻量级持久内存。ACM SIGARCH计算。阿基特。新闻39(1),91-104(2011)·doi:10.1145/1961295.1950379
[38] Zuriel,Y.、Friedman,M.、Sheffi,G.、Cohen,N.、Petrank,E.:高效无锁耐用套装。PACMPL 3(OOPSLA),1281-12826(2019)
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。