arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1604.08484cs.DCcs.ARcs.PF
收藏

架构对内存数据分析性能的影响:Apache Spark案例研究

Architectural Impact on Performance of In-memory Data Analytics: Apache Spark Case Study

Ahsan Javed Awan, Mats Brorsson, Vladimir Vlassov, Eduard Ayguade

摘要:

虽然集群计算框架正在不断发展以提供实时数据分析功能,但Apache Spark已经成为大数据分析的最前沿,成为批量和流数据处理的统一框架。然而,最近的研究在内存中的数据分析的微架构表征仅限于批处理工作负载。我们使用双套接字服务器上的硬件性能计数器比较Apache Spark中批处理和流处理工作负载的微架构性能。在我们的评估实验中,我们已经发现,批处理是流处理工作负载具有类似的微架构特征,并受到频繁的数据访问DRAM的延迟。对于数据访问,我们发现同时多线程可以有效地隐藏数据延迟。我们还观察到,(i)NUMA节点上的数据局部性可以平均提高10%的性能,(ii)禁用下一行L1-D预取器可以减少高达14%的执行时间,(iii)多个小执行器可以提供高达36%的加速比。

英文摘要:

While cluster computing frameworks are continuously evolving to provide real-time data analysis capabilities, Apache Spark has managed to be at the forefront of big data analytics for being a unified framework for both, batch and stream data processing. However, recent studies on micro-architectural characterization of in-memory data analytics are limited to only batch processing workloads. We compare micro-architectural performance of batch processing and stream processing workloads in Apache Spark using hardware performance counters on a dual socket server. In our evaluation experiments, we have found that batch processing are stream processing workloads have similar micro-architectural characteristics and are bounded by the latency of frequent data access to DRAM. For data accesses we have found that simultaneous multi-threading is effective in hiding the data latencies. We have also observed that (i) data locality on NUMA nodes can improve the performance by 10% on average and(ii) disabling next-line L1-D prefetchers can reduce the execution time by up-to 14\% and (iii) multiple small executors can provide up-to 36\% speedup over single large executor.

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

↑