通过将中间语言从c++更改为Java,提高编译器级大规模测试的生产率

IF 0.3 Q4 COMPUTER SCIENCE, THEORY & METHODS Acta Universitatis Sapientiae Informatica Pub Date : 2021-06-01 DOI:10.2478/ausi-2021-0007
Izabella Ingrid Farkas, Kristóf Szabados, A. Kovács
{"title":"通过将中间语言从c++更改为Java,提高编译器级大规模测试的生产率","authors":"Izabella Ingrid Farkas, Kristóf Szabados, A. Kovács","doi":"10.2478/ausi-2021-0007","DOIUrl":null,"url":null,"abstract":"Abstract This paper is based on research results achieved by a collaboration between Ericsson Hungary Ltd. and the Large Scale Testing Research Lab of Eötvös Loránd University, Budapest. We present design issues and empirical observations on extending an existing industrial toolset with a new intermediate language1. Context: The industry partner’s toolset is using C/C++ as an intermediate language, providing good execution performance, but “somewhat long” build times, o ering a sub-optimal experience for users. Objective: In cooperation with our industry partner our task was to perform an experiment with Java as a different intermediate language and evaluate results, to see if this could improve build times. Method: We extended the mentioned toolset to use Java as an intermediate language. Results: Our measurements show that using Java as an intermediate language improves build times significantly. We also found that, while the runtime performance of C/C++ is better in some situations, Java, at least in our testing scenarios, can be a viable alternative to improve developer productivity. Our contribution is unique in the sense that both ways of building and execution can use the same source code as input, written in the same language, generate intermediate codes with the same high-level structure, compile into executables that are configured using the same files, run on the same machine, show the same behaviour and generate the same logs. Conclusions: We created an alternative build pipeline that might enhance the productivity of our industry partner’s test developers by reducing the length of builds during their daily work.","PeriodicalId":41480,"journal":{"name":"Acta Universitatis Sapientiae Informatica","volume":"1 1","pages":"134 - 179"},"PeriodicalIF":0.3000,"publicationDate":"2021-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Improving productivity in large scale testing at the compiler level by changing the intermediate language from C++ to Java\",\"authors\":\"Izabella Ingrid Farkas, Kristóf Szabados, A. Kovács\",\"doi\":\"10.2478/ausi-2021-0007\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Abstract This paper is based on research results achieved by a collaboration between Ericsson Hungary Ltd. and the Large Scale Testing Research Lab of Eötvös Loránd University, Budapest. We present design issues and empirical observations on extending an existing industrial toolset with a new intermediate language1. Context: The industry partner’s toolset is using C/C++ as an intermediate language, providing good execution performance, but “somewhat long” build times, o ering a sub-optimal experience for users. Objective: In cooperation with our industry partner our task was to perform an experiment with Java as a different intermediate language and evaluate results, to see if this could improve build times. Method: We extended the mentioned toolset to use Java as an intermediate language. Results: Our measurements show that using Java as an intermediate language improves build times significantly. We also found that, while the runtime performance of C/C++ is better in some situations, Java, at least in our testing scenarios, can be a viable alternative to improve developer productivity. Our contribution is unique in the sense that both ways of building and execution can use the same source code as input, written in the same language, generate intermediate codes with the same high-level structure, compile into executables that are configured using the same files, run on the same machine, show the same behaviour and generate the same logs. Conclusions: We created an alternative build pipeline that might enhance the productivity of our industry partner’s test developers by reducing the length of builds during their daily work.\",\"PeriodicalId\":41480,\"journal\":{\"name\":\"Acta Universitatis Sapientiae Informatica\",\"volume\":\"1 1\",\"pages\":\"134 - 179\"},\"PeriodicalIF\":0.3000,\"publicationDate\":\"2021-06-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Acta Universitatis Sapientiae Informatica\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.2478/ausi-2021-0007\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q4\",\"JCRName\":\"COMPUTER SCIENCE, THEORY & METHODS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Acta Universitatis Sapientiae Informatica","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.2478/ausi-2021-0007","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0

摘要

本文基于爱立信匈牙利有限公司与布达佩斯Eötvös Loránd大学大规模测试研究实验室合作的研究成果。我们提出了用一种新的中间语言扩展现有工业工具集的设计问题和经验观察1。上下文:行业合作伙伴的工具集使用C/ c++作为中间语言,提供了良好的执行性能,但“有些长”的构建时间,从而为用户提供了次优体验。目标:与我们的行业伙伴合作,我们的任务是将Java作为一种不同的中间语言进行实验,并评估结果,看看这是否可以改善构建时间。方法:我们扩展了上面提到的工具集,使用Java作为中间语言。结果:我们的测量结果表明,使用Java作为中间语言可以显著改善构建时间。我们还发现,虽然C/ c++在某些情况下的运行时性能更好,但至少在我们的测试场景中,Java可以成为提高开发人员生产力的可行替代方案。我们的贡献是独特的,因为构建和执行的两种方式都可以使用相同的源代码作为输入,用相同的语言编写,生成具有相同高级结构的中间代码,编译成使用相同文件配置的可执行文件,在同一台机器上运行,显示相同的行为并生成相同的日志。结论:我们创建了一个可选的构建管道,它可以通过减少我们的行业合作伙伴的测试开发人员在日常工作中的构建长度来提高他们的生产力。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Improving productivity in large scale testing at the compiler level by changing the intermediate language from C++ to Java
Abstract This paper is based on research results achieved by a collaboration between Ericsson Hungary Ltd. and the Large Scale Testing Research Lab of Eötvös Loránd University, Budapest. We present design issues and empirical observations on extending an existing industrial toolset with a new intermediate language1. Context: The industry partner’s toolset is using C/C++ as an intermediate language, providing good execution performance, but “somewhat long” build times, o ering a sub-optimal experience for users. Objective: In cooperation with our industry partner our task was to perform an experiment with Java as a different intermediate language and evaluate results, to see if this could improve build times. Method: We extended the mentioned toolset to use Java as an intermediate language. Results: Our measurements show that using Java as an intermediate language improves build times significantly. We also found that, while the runtime performance of C/C++ is better in some situations, Java, at least in our testing scenarios, can be a viable alternative to improve developer productivity. Our contribution is unique in the sense that both ways of building and execution can use the same source code as input, written in the same language, generate intermediate codes with the same high-level structure, compile into executables that are configured using the same files, run on the same machine, show the same behaviour and generate the same logs. Conclusions: We created an alternative build pipeline that might enhance the productivity of our industry partner’s test developers by reducing the length of builds during their daily work.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Acta Universitatis Sapientiae Informatica
Acta Universitatis Sapientiae Informatica COMPUTER SCIENCE, THEORY & METHODS-
自引率
0.00%
发文量
9
期刊最新文献
E-super arithmetic graceful labelling of Hi(m, m), Hi(1) (m, m) and chain of even cycles On agglomeration-based rupture degree in networks and a heuristic algorithm On domination in signed graphs Connected certified domination edge critical and stable graphs Eccentric connectivity index in transformation graph Gxy+
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1