×

使用分布式模板算法的应用程序对循环依赖性进行自动化的形式验证。 (英语) Zbl 1468.68129号

Blanchette,Jasmin Christian(编辑)等,交互式定理证明。2016年8月22日至25日在法国南希举行的2016年ITP第七届国际会议。诉讼程序。查姆:斯普林格。莱克特。注释计算。科学。9807, 167-183 (2016).
摘要:模具程序的类涉及根据固定模式(称为模具)重复更新数组元素。模板问题在科学计算中普遍存在,并被用作解决更复杂问题的一个要素。它们的高规则性允许大规模并行化。设计此类算法的两个重要挑战是缓存效率和最小化节点之间的通信步骤数。在本文中,我们介绍了一个用于顺序和分布式模板算法形式验证的关键方面的数学框架,并描述了其Coq实现。我们提出了一种特定于域的嵌入式编程语言,支持自动化最繁琐的证明步骤,证明嵌套循环尊重依赖关系,适用于顺序和分布式示例。最后,我们通过证明一些真实世界模板算法的依赖性正确性来评估我们的库的健壮性,这些算法包括最先进的缓存可发布序列算法以及两个优化的分布式内核。
关于整个系列,请参见[Zbl 1343.68004号].

MSC公司:

60年第68季度 规范和验证(程序逻辑、模型检查等)
68伏15 定理证明(自动和交互式定理证明、演绎、解析等)
PDF格式BibTeX公司 XML格式引用
全文: 内政部 链接

参考文献:

[1] Betts,A.,Chong,N.,Donaldson,A.,Qadeer,S.,Thomson,P.:GPU验证:GPU内核的验证程序。摘自:《OOPSLA会议录》,第113-132页。ACM(2012年)·doi:10.1145/2384616.2384625
[2] Boldo,S.,Clément,F.,Filliâtre,J.-C,Mayero,M.,Melquiond,G.,Weis,P.:波动方程解析方案的形式证明:方法误差。收录:Kaufmann,M.,Paulson,L.C.(编辑)ITP 2010。LNCS,第6172卷,第147-162页。施普林格,海德堡(2010)·Zbl 1291.68329号 ·doi:10.1007/978-3642-14052-5_12
[3] Boldo,S.、Clément,F.、Filliátre,J.C.、Mayero,M.、Melquiond,G.、Weis,P.:波动方程数值分辨率:C程序的综合机械化证明。J.汽车。推理50(4),423–456(2013)·Zbl 1267.68208号 ·doi:10.1007/s10817-012-9255-4
[4] Epperson,J.F.:《数值方法与分析导论》。威利,纽约(2014)·Zbl 1143.65001号
[5] Feautrier,P.:多面体模型中的自动并行化。In:Perrin,G.-R.,Darte,A.(编辑)《数据并行编程模型》。LNCS,第1132卷,第79-103页。斯普林格,海德堡(1996)·doi:10.1007/3-540-61736-1_44
[6] Frigo,M.,Strumpen,V.:缓存不经意的模板计算。摘自:《超级计算学报》,第361-366页。ACM(2005)·doi:10.1145/1088149.1088197
[7] Frigo,M.,Strumpen,V.:多线程缓存遗忘算法的缓存复杂性。理论计算。系统。45(2), 203–233 (2009) ·Zbl 1183.68721号 ·doi:10.1007/s00224-007-9098-2
[8] 加德纳,M.:数学游戏——约翰·康威的新纸牌游戏“生活”的奇妙组合。科学。《美国判例汇编》第223卷第4期,第120-123页(1970年)·doi:10.1038/科学美国人1070-120
[9] Immler,F.,Hölzl,J.:Isabelle/HOL中常微分方程的数值分析。收录:Beringer,L.,Felty,A.(编辑)ITP 2012。LNCS,第7406卷,第377-392页。斯普林格,海德堡(2012)·Zbl 1360.68753号 ·doi:10.1007/978-3642-32347-8_26
[10] Kelly,W.,Pugh,W.:迭代重新排序转换的统一框架。摘自:ICAPP会议记录,第1卷,第153-162页。IEEE(1995)·doi:10.1109/ICAPP.1995.472180
[11] LeVeque,R.J.:《常微分方程和偏微分方程的有限差分方法:稳态和时间相关问题》,第98卷。费城SIAM(2007年)·兹比尔1127.65080 ·数字对象标识代码:10.1137/1.9780898717839
[12] Li,G.,Gopalakrishnan,G.:基于可伸缩SMT的GPU内核函数验证。摘自:FSE会议记录,第187-196页。ACM(2010)·数字对象标识代码:10.1145/1882291.1882320
[13] Li,G.,Li,P.,Sawaya,G,Gopalakrishnan,G,Ghosh,I.,Rajan,S.P.:GKLEE:GPU的混合验证和测试生成。摘自:PPOPP,第215-224页(2012年)·doi:10.1145/2145816.2145844
[14] Loechner,V.:PolyLib:一个用于操作参数化多面体的库(1999)。http://camlunity.ru/swap/Library/Conflux/Techniques网站
[15] Maydan,D.E.,Hennessy,J.L.,Lam,M.S.:高效准确的数据相关性分析。摘自:PLDI会议记录,PLDI 1991,第1-14页。ACM(1991)·数字对象标识代码:10.1145/113446.113447
[16] Orchard,D.,Mycroft,A.:通过模式匹配和静态类型进行有效且正确的模板计算。arXiv预印本arXiv:1109.0777(2011)
[17] Pugh,W.:Omega测试:用于相关性分析的快速实用整数规划算法。摘自:《超级计算学报》,第4-13页。ACM(1991)·doi:10.1145/125826.125848
[18] Solar-Lezama,A.、Arnold,G.、Tancau,L.、Bodik,R.、Saraswat,V.、Seshia,S.:草图模具。在:PLDI会议记录,第167–178页。ACM(2007)·数字对象标识代码:10.1145/1250734.1250754
[19] Tang,Y.,Chowdhury,R.A.,Kuszmaul,B.C.,Luk,C.K.,Leiserson,C.E.:Pochoir模具编译器。摘自:《SPAA会议记录》,第117-128页。ACM(2011)·数字对象标识代码:10.1145/1989493.1989508
[20] Valiant,L.G.:并行计算的桥接模型。Commun公司。ACM 33(8),103–111(1990)·doi:10.1145/79173.79181
[21] Xu,Z.,Kamil,S.,Solar-Lezama,A.:MSL:一种支持分布式实现的合成语言。摘自:《高性能计算、网络、存储和分析国际会议论文集》,第311-322页。IEEE出版社(2014)·doi:10.1109/SC.2014.31
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。