RDS: a cloud-based metaservice for detecting data races in parallel programs

RDS: a cloud-based metaservice for detecting data races in parallel programs
复制标题

RDS:一种基于云的元服务,用于检测并行程序中的数据竞争

DOI:
10.1145/3468737.3494089
复制
发表时间:
2021
期刊:
UCC '21: Proceedings of the 14th IEEE/ACM International Conference on Utility and Cloud Computing
影响因子:
--
通讯作者:
Liao, Chunhua
Liao, Chunhua
中科院分区:
--
文献类型:
--
作者:
Shi, Yaying;Wang, Anjia;Yan, Yonghong;Liao, Chunhua

文献摘要

参考文献

相似文献

数据竞争是臭名昭著的并发错误,可能会导致严重的问题,包括随机崩溃和损坏的执行结果。然而,现有的数据竞争检测工具对用户来说仍然具有挑战性。用户需要花费大量的精力来安装、配置和正确使用工具。一个单一的工具往往不能发现程序中的所有bug。在本文中,我们提出了一个基于云的,面向服务的设计和实现的竞争检测服务(RDS)1,以检测并行程序中的数据竞争。RDS通过REST API将多个数据竞争检测工具集成到单个基于云的服务中。它定义了一个标准的JSON格式来表示数据竞争检测结果,便于生成用户友好的报告,聚合多个工具的输出,以及易于由其他工具处理。RDS还定义了一组策略,用于聚合来自多个工具的输出。RDS极大地简化了使用数据竞争检测工具的工作流程,并提高了报告质量和并行程序执行竞争检测的生产率。我们的评估表明,RDS可以提供更准确的结果,更少的努力,从用户相比,传统的方式使用任何单独的工具。使用四种选定的工具和DataRaceBench,RDS将调整后的F-1分数分别提高了8.8%和12.6%。对于NAS并行基准测试,RDS提高了35%的调整后的准确性相比,平均的工具。我们的工作研究了一种新的方法,通过面向服务的架构组成的软件工具的并行计算。同样的方法和框架可以用来为编译器、性能工具、自动调优工具等创建元服务。
Data races are notorious concurrency bugs which can cause severe problems, including random crashes and corrupted execution results. However, existing data race detection tools are still challenging for users to use. It takes a significant amount of effort for users to install, configure and properly use a tool. A single tool often cannot find all the bugs in a program. Requiring users to use multiple tools is often impracticable and not productive because of the differences in tool interfaces and report formats.In this paper, we present a cloud-based, service-oriented design and implementation of a race detection service (RDS)1to detect data races in parallel programs. RDS integrates multiple data race detection tools into a single cloud-based service via a REST API. It defines a standard JSON format to represent data race detection results, facilitating producing user-friendly reports, aggregating output of multiple tools, as well as being easily processed by other tools. RDS also defines a set of policies for aggregating outputs from multiple tools. RDS significantly simplifies the workflow of using data race detection tools and improves the report quality and productivity of performing race detection for parallel programs. Our evaluation shows that RDS can deliver more accurate results with much less effort from users, when compared with the traditional way of using any individual tools. Using four selected tools and DataRaceBench, RDS improves the Adjusted F-1 scores by 8.8% and 12.6% over the best and the average scores, respectively. For the NAS Parallel Benchmark, RDS improves 35% of the adjusted accuracy compared to the average of the tools.Our work studies a new approach of composing software tools for parallel computing via a service-oriented architecture. The same approach and framework can be used to create metaservice for compilers, performance tools, auto-tuning tools, and so on.
DOI: --
发表时间: 2017
期刊: Scalable Trusted Computing
影响因子: --
作者:
J. Kupsch;B. Miller;V. Basupalli;J. Burger
通讯作者: J. Burger
数据竞争检测工具的运行时和内存评估
DOI: --
发表时间: 2018
期刊: Leveraging Applications of Formal Methods
影响因子: --
作者:
Pei;C. Liao;M. Schordan;I. Karlin
通讯作者: I. Karlin
增强 DataRaceBench 以评估数据竞争检测工具
DOI: --
发表时间: 2020
期刊: International Workshop on Software Correctness for HPC Applications
影响因子: --
作者:
Gaurav Verma;Yaying Shi;C. Liao;B. Chapman;Yonghong Yan
通讯作者: Yonghong Yan
OpenMP 程序的动态数据竞争检测
DOI: --
发表时间: 2018
期刊: International Conference for High Performance Computing, Networking, Storage and Analysis
影响因子: --
作者:
Yizi Gu;J. Mellor
通讯作者: J. Mellor
源代码分析实验室 (SCALe)
DOI: --
发表时间: 2012
期刊:
影响因子: --
作者:
R. Seacord;Will Dormann;J. McCurley;Philip Miller;R. Stoddard;David Svoboda;Jefferson Welch
通讯作者: Jefferson Welch