×

面向对象字节码程序的成本分析。 (英语) Zbl 1236.68042号

概要:成本分析根据程序的输入数据大小静态地近似程序的成本。就我们所知,本文提出了第一种面向对象字节码程序自动成本分析的方法。在Java和C#等语言中,分析字节码比分析源代码有更广泛的应用领域,因为后者通常不可用。在这种情况下,成本分析必须考虑动态调度、跳转、操作数堆栈和堆。我们的方法采用字节码程序和指定感兴趣资源的成本模型,并生成成本关系,该成本关系近似于程序相对于此类资源的执行成本。我们报道了COSTA,这是一种Java字节码的实现,它可以获得大型程序和复杂类的成本上限。我们的基本技术可以直接应用于推断其他面向对象命令式语言的成本关系,而不一定是字节码形式。

MSC公司:

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

参考文献:

[1] 阿达奇,A。;Kasai,T。;Moriya,E.,《程序时间分析的理论研究》(MFCS’79的Proc.)。程序。MFCS’79,LNCS,第74卷(1979),Springer),201-207·Zbl 0457.68015号
[2] Aho,A.V。;霍普克罗夫特,J.E。;Ullman,J.D.,《计算机算法的设计与分析》(1974),Addison-Wesley·Zbl 0207.01701号
[3] Aho,A.V。;Sethi,R。;Ullman,J.D.,《编译原理、技术和工具》(1986年),艾迪森·韦斯利
[4] 艾伯特·E。;阿雷纳斯,P。;科迪什,M。;Genaim,S。;普埃布拉,G。;Zanardini,D.,Java字节码的终止分析(FMOODS’08的Proc.)。程序。FMOODS’08,LNCS,第5051卷(2008),Springer),2-18
[5] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;赫拉伊斯,I。;Puebla,G.,《比较资源分析中的成本函数》,(《2009年FOPARA公报》)。程序。FOPARA'09,LNCS,第6234卷(2010年),施普林格),1-17·Zbl 1305.68051号
[6] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;Puebla,G.,《通过场敏分析进行场敏值分析》,(FM'09年公报)。程序。FM'09,LNCS,第5850卷(2009),施普林格),370-386
[7] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;Puebla,G.,静态成本分析中的闭式上界,《自动推理杂志》,46,2,161-203(2011)·兹比尔1213.68200
[8] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;普埃布拉,G。;Ramírez,D.,《从对象字段到局部变量:字段敏感分析的实用方法》(SAS’10的Proc.)。程序。SAS’10,LNCS,第6337卷(2010),Springer),100-116·Zbl 1306.68016号
[9] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;普埃布拉,G。;Zanardini,D.,《Java字节码的成本分析》(2007年《ESOP Proc.of ESOP》)。程序。ESOP’07,LNCS,第4421卷(2007),Springer),157-172
[10] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;普埃布拉,G。;Zanardini,D.,Java字节码成本分析实验,Proc。BYTECODE’07的。程序。BYTECODE’07,ENTCS,190,67-83(2007)
[11] 艾伯特·E。;阿雷纳斯,P。;Genaim,S。;Zanardini,D.,《异步并行语言的任务级分析》(LCTES’11(2011)Proc.of LCTES,ACM Press),21-30
[12] 艾伯特·E。;Genaim,S。;Gómez-Zamalloa,M.,Java字节码堆空间分析,(ISMM’07(2007)Proc.of ISMM’7(2007),ACM Press),105-116
[13] 艾伯特·E。;Genaim,S。;Gómez-Zamalloa,M.,垃圾收集语言内存需求的参数推断,(ISMM’10(2010)Proc.,ACM Press),121-130
[14] 艾伯特·E。;Genaim,S。;Masud,A.N.,《更精确但广泛适用的成本分析》(VMCAI’11 Proc.)。程序。VMCAI’11,LNCS,第6538卷(2011),施普林格),38-53·Zbl 1317.68027号
[15] 阿斯皮诺,D。;吉尔摩,S。;霍夫曼,M。;Sannella,D。;Stark,I.,《智能设备的移动资源保障》(CASSIS’04 Proc.)。程序。CASSIS’04,LNCS,第3362卷(2005),Springer),1-27
[16] 巴格纳拉,R。;希尔,P.M。;Zaffanella,E.,《帕尔玛多面体库:为硬件和软件系统的分析和验证实现一整套数字抽象》,《计算机编程科学》,72,1-2(2008)
[17] Ben-Amram,A.M。;琼斯,N.D。;Kristiansen,L.,线性、多项式还是指数?多项式时间的复杂性推理(CiE’08的Proc.)。程序。CiE’08,LNCS,第5028卷(2008),Springer),67-76·Zbl 1142.68369号
[18] 贝诺伊,F。;King,A.,《用CLP(R)推断参数大小关系》,(1997年LOPSTR学报)。程序。LOPSTR'97,LNCS,第1207卷(1997),施普林格出版社,204-223
[19] Benzinger,R.,自动化高阶复杂度分析,理论计算机科学,3181-2(2004)·Zbl 1071.68029号
[20] Blanchet,B.,面向对象语言的逃逸分析。Java应用(TM),(OOPSLA’99(1999)Proc.,ACM Press),20-34
[21] 布拉伯曼,V。;Fernández,F。;Garbervetsky,D。;Yovine,S.,堆内存需求的参数预测,(ISMM’08(2008)Proc.,ACM出版社),141-150
[22] 布劳尔,J。;King,A.,《使用布尔公式自动提取区间》(SAS’10的Proc.)。程序。SAS’10,LNCS,第6337卷(2010年),Springer),167-183·Zbl 1306.68020号
[23] Bruynooghe,M。;鳕鱼,M。;加拉赫,J.P。;Genaim,S。;Vanhoof,W.,《通过结合基于类型的规范对逻辑程序进行终止分析》,《ACM编程语言和系统汇刊》,29,2(2007)
[24] Cachera,D。;Jensen,T。;Pichardie,D。;Schneider,G.,《认证内存使用分析》(FM'05 Proc.of FM'05)。程序。FM'05,LNCS,第3582卷(2005),施普林格),91-106·Zbl 1120.68385号
[25] Cachera,D。;Jensen,T.P。;Jobin,A。;Long-run,P.,通过二元体上线性算子的近似进行成本分析,《计算机科学中的数学结构》,20,4,589-624(2010)·Zbl 1209.68124号
[26] Chander,A。;埃斯皮诺萨,D。;伊斯兰,N。;李·P。;Necula,G.,《通过动态检查的静态验证来实施资源边界》(ESOP’05 Proc.)。程序。ESOP’05,LNCS,第3444卷(2005),Springer),311-325·Zbl 1108.68419号
[27] Chen,L。;米内,A。;Cousot,P.,《一个健全的浮点多面体抽象域》(APLAS’08 Proc.)。程序。APLAS’08,LNCS,第5356卷(2008),Springer),3-18
[28] Chin,西-北。;Nguyen,H.H。;波皮亚,C。;Qin,S.,分析低级程序的内存资源边界,(ISMM’08(2008)Proc.,ACM Press),151-160
[29] 库索特,P。;库索特,R.,《抽象解释:通过构造或近似不动点对程序进行静态分析的统一格模型》(POPL’77(1977)Proc.,ACM Press),238-252
[30] 库索特,P。;Halbwachs,N.,程序变量之间线性约束的自动发现,(POPL’78(1978)Proc.,ACM Press),84-97
[31] Craig,S.J。;Leuschel,M.,《序言的自调优资源感知专业化》(PPDP'05(2005),ACM出版社),23-34
[32] 克雷利(Crary,K.)。;Weirich,S.,资源约束认证,(POPL'00(2000)Proc.,ACM Press),184-198·Zbl 1323.68368号
[33] 德布雷,S.K。;Lin,N.W.,逻辑程序的成本分析,ACM程序设计语言和系统汇刊,15,5(1993)
[34] R.DeLine,K.R.M.Leino,BoogiePL:用于检查面向对象程序的类型化过程语言。技术报告MSR-TR-2005-70,Microsoft Research,2005年。;R.DeLine,K.R.M.Leino,BoogiePL:用于检查面向对象程序的类型化过程语言。技术报告MSR-TR-2005-70,Microsoft Research,2005年。
[35] A.Ermedahl,J.Gustafsson,B.Lisper,工业wcet分析案例研究的经验,载于:Proc。WCET’05,OASICS第1卷,2005年。;A.Ermedahl,J.Gustafsson,B.Lisper,《工业用水分析案例研究的经验》,摘自:Proc。WCET’05,OASICS,2005年第1卷。
[36] S.Genaim,F.Spoto,恒定性分析,摘自:第十届类Java程序形式化技术研讨会,2008年。;S.Genaim,F.Spoto,Constancy analysis,载于:2008年第十届类Java程序正式技术研讨会·Zbl 1111.68505号
[37] 古德里奇,M。;Tamassia,R.,《Java中的数据结构和算法》(2004),John Wiley·Zbl 1059.68022号
[38] M.T.Goodrich、R.Tamassia、R.Zamore,《网络数据结构包》,第3版。可在http://net3.datastructures.net; M.T.Goodrich、R.Tamassia、R.Zamore,《网络数据结构包》,第3版。可在http://net3.datastructures.net
[39] Gulavani,B.S。;Gulwani,S.,基于表达式抽象和最大算子的数值抽象域,在时序分析中的应用,(CAV’08 Proc。程序。CAV’08,LNCS,第5123卷(2008),施普林格),370-384·Zbl 1155.68366号
[40] Halbwachs,N。;Péron,M.,《发现简单程序中数组的属性》(PLDI’08 Proc.(2008),ACM Press),339-348
[41] Hermenegildo,M。;艾伯特·E。;洛佩斯·加西亚,P。;Puebla,G.,《携带代码的抽象与资源意识》(PPDP'05(2005),ACM出版社),第1-11页
[42] Hermenegildo,M。;普埃布拉,G。;布埃诺,F。;López-García,P.,使用抽象解释(和ciao系统预处理器)的集成程序调试、验证和优化,计算机编程科学,58,1-2(2005)·Zbl 1076.68540号
[43] 霍夫曼,M。;Jost,S.,一阶函数程序堆空间使用的静态预测,(POPL'03(2003)Proc.,ACM Press),185-197·Zbl 1321.68180号
[44] 克里斯蒂安森,L。;Jones,N.D.,《数据流和算法复杂性》(2005年《国际经济评论》)。程序。CiE’05,LNCS,第3526卷(2005),Springer),263-274·Zbl 1115.68052号
[45] Le Metayer,D.,ACE:一个自动复杂性评估器,《ACM编程语言和系统事务》,10,2(1988)
[46] J.-Y.Marion,R.Pèchoux,面向对象程序的资源控制,摘自:Proc。LICS附属LCC’07车间,2007年。;J.-Y.Marion,R.Pèchoux,面向对象程序的资源控制,摘自:Proc。LICS附属LCC’07车间,2007年。
[47] Miné,A.,带有并集类型和指针算术的嵌入式C程序的字段敏感值分析,(LCTES’06(2006),ACM Proc.),54-63
[48] 纳瓦斯,J。;梅拉,E。;洛佩斯·加西亚,P。;Hermenegildo,M.,《逻辑程序的用户定义资源边界分析》,(ICLP’07 Proc.)。程序。ICLP’07,LNCS,第4670卷(2007),Springer),348-363
[49] Necula,G.,《防伪代码》(POPL'97 Proc.(1997),ACM出版社),106-119
[50] 尼尔森,F。;尼尔森,H.R。;Hankin,C.,《程序分析原理》(2005),Springer·Zbl 1069.68534号
[51] 奈格尔,K.-H。;Wunderlich,H.,为命令式程序证明多项式时间和线性/多项式空间,SIAM计算杂志,35,5(2006)·Zbl 1100.68035号
[52] 普埃布拉,G。;Ochoa,C.,《多元控制部分评估》(PPDP'06(2006),ACM出版社),261-271
[53] D.Ramírez,J.Correas,G.Puebla,Java字节码的模块终止分析及其在音素核心库中的应用,见:Proc。FACS’10,LNCS,第6921卷,施普林格,2010年(出版中)。;D.Ramírez,J.Correas,G.Puebla,Java字节码的模块终止分析及其在音素核心库中的应用,见:Proc。FACS’10,LNCS,第6921卷,Springer,2010年(出版中)。
[54] Rosendahl,M.,《自动复杂性分析》(FPCA’89 Proc.(1989),ACM Press),144-156
[55] 罗西诺利,S。;Spoto,F.,《通过将抽象编译为布尔函数来检测非周期性》,(VMCAI'06 Proc。程序。VMCAI’06,LNCS,第3855卷(2006),Springer),95-110·Zbl 1176.68043号
[56] Sands,D.,《天真的时间分析及其成本等价理论》,《逻辑与计算杂志》,5,4(1995)·Zbl 0942.68623号
[57] 塞奇,S。;Spoto,F.,《面向对象程序的成对共享分析》,(2005年SAS公报)。程序。SAS’05,LNCS,第3672卷(2005),Springer),第320-335页·Zbl 1141.68378号
[58] F.斯波托,朱莉娅; F.斯波托,朱莉娅
[59] F.Spoto,P.M.Hill,E.Payet,面向对象程序的路径长度分析,摘自:Proc。EAAI'06,2006年。可在http://profs.sci.univr.it网站/spoto/papers.html;F.Spoto,P.M.Hill,E.Payet,面向对象程序的路径长度分析,摘自:Proc。EAAI'06,2006年。可在http://profs.sci.univr.it网站/spoto/papers.html
[60] 斯波托,F。;梅斯纳德,F。;佩耶特,埃及。,基于路径长度的Java字节码终止分析器,《编程语言和系统事务》,32,3(2010)
[61] 瓦利·雷伊(Vallee-Rai),R。;亨德伦。;Sundaresan,V。;Lam,P。;加格农,E。;Co,P.,Soot-一个Java优化框架,(CASCON'99(1999),IBM的Proc.),125-135
[62] Wadler,P.,严格分析有助于时间分析,(POPL'88(1988)Proc.,ACM Press),119-132
[63] Wegbreit,B.,机械程序分析,ACM通信,18,9(1975)·Zbl 0306.68008号
[64] 威廉·R。;Engblom,J。;埃米达尔,A。;Holsti,N。;Thesing,S。;惠利博士。;伯纳特,G。;费迪南德,C。;赫克曼,R。;密特拉·T。;米勒,F。;Puaut,I。;Puschner,P。;斯塔舒拉特,J。;Stenström,P.,《最坏情况下的执行时间问题——方法概述和工具调查》,《嵌入式计算系统ACM事务》,第7期,第36页(2008年)
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。