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

DINAMITE:一种现代的内存性能分析方法

DINAMITE: A modern approach to memory performance profiling

Svetozar Miucin, Conor Brady, Alexandra Fedorova

摘要:

诊断和修复具有深层存储层次结构的多核机器上的性能问题是极具挑战性的。当我们能够分析程序执行的整个轨迹时,某些问题得到了最好的解决,例如,每一次记忆访问不幸的是,这种详细的执行日志非常大,无法通过直接检查进行分析。本文介绍了DINAMITE:一个用于大量痕迹勘探的动态仪器和分析工具包。DINAMITE是一个用于端到端性能分析的工具集:从LLVM编译器传递到使用现代数据分析引擎Spark Streaming进行跟踪内省的即插即用工具。使用DINAMITE,我们发现了在几个应用程序中改进数据布局的机会,这些应用程序导致了15-20%的性能改进,并在一个流行的键值存储中发现了共享变量瓶颈,消除了它,性能提高了20倍。

英文摘要:

Diagnosing and fixing performance problems on multicore machines with deep memory hierarchies is extremely challenging. Certain problems are best addressed when we can analyze the entire trace of program execution, e.g., every memory access. Unfortunately such detailed execution logs are very large and cannot be analyzed by direct inspection. We present DINAMITE: a toolkit for Dynamic INstrumentation and Analysis for MassIve Trace Exploration. DINAMITE is a collection of tools for end-to-end performance analysis: from the LLVM compiler pass that instruments the program to plug-and-play tools that use a modern data analytics engine Spark Streaming for trace introspection. Using DINAMITE we found opportunities to improve data layout in several applications that resulted in 15-20% performance improvements and found a shared-variable bottleneck in a popular key-value store, whose elimination improved performance by 20x.

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

↑