arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2107.11536cs.DC
收藏

SODA:一个基于混合程序分析的数据密集型语义优化框架

SODA: A Semantics-Aware Optimization Framework for Data-Intensive Applications Using Hybrid Program Analysis

Bingbing Rao, Zixia Liu, Hong Zhang, Siyang Lu, Liqiang Wang

摘要:

在数据爆炸的时代,越来越多的数据密集型计算框架,如Apache Hadoop和Spark,已经被提出来并行处理大量的非结构化数据。由于这些框架提供的编程模型允许用户使用预定义的操作指定复杂和多样化的用户定义函数(UDF),如果程序员不能完全理解代码,数据和运行时系统的语义,那么调整整个系统性能的巨大挑战就会出现。在本文中,我们使用混合程序分析(SODA)来帮助程序员调整性能问题,设计了一个整体的语义感知优化的数据密集型应用程序。SODA是一个两阶段的框架:离线阶段是一个静态分析,它分析来自先前执行的在线阶段的代码和性能分析数据,以生成参数化和仪表化的应用程序;在线阶段是一个动态分析,它跟踪应用程序的执行并收集数据和系统的运行时信息。在四个真实的Spark应用上的大量实验结果表明,SODA可以比其原始实现快60%,10%,8%,并提出了三种优化策略,即,高速缓存管理、操作重排序和元素修剪。

英文摘要:

In the era of data explosion, a growing number of data-intensive computing frameworks, such as Apache Hadoop and Spark, have been proposed to handle the massive volume of unstructured data in parallel. Since programming models provided by these frameworks allow users to specify complex and diversified user-defined functions (UDFs) with predefined operations, the grand challenge of tuning up entire system performance arises if programmers do not fully understand the semantics of code, data, and runtime systems. In this paper, we design a holistic semantics-aware optimization for data-intensive applications using hybrid program analysis} (SODA) to assist programmers to tune performance issues. SODA is a two-phase framework: the offline phase is a static analysis that analyzes code and performance profiling data from the online phase of prior executions to generate a parameterized and instrumented application; the online phase is a dynamic analysis that keeps track of the application's execution and collects runtime information of data and system. Extensive experimental results on four real-world Spark applications show that SODA can gain up to 60%, 10%, 8%, faster than its original implementation, with the three proposed optimization strategies, i.e., cache management, operation reordering, and element pruning, respectively.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑