当前位置:问答库>论文摘要

题目:多核处理器并行程序在线Cache性能分析工具的研究与实现

关键词:多核处理器;并行程序;共享Cache;Cache性能分析

  摘要

近几十年来,随着芯片制造工艺的发展,处理器计算能力越来越强,处理器架构正逐渐向多核/众核方向发展。另外,处理器运行速度和存储器访问速度之间的差距越来越大,导致的“存储墙”问题越来越严重,并且逐渐成为制约系统整体性能的关键因素。现代处理器大多采用Cache来缓解处理器和主存之间的速度差距,程序的Cache性能的好坏对整体性能影响越来越大,关系到处理器丰富的硬件资源能否得到充分利用。多核处理器程序以并行程序为主,并行程序的Cache行为更加复杂,因此需要对程序的Cache性能进行有效的分析和统计,以帮助程序设计者了解程序行为,指导程序优化。然而,现有的Cache性能分析工具,由于硬件性能计数器的限制,只能够获得程序整体的Cache信息(如缺失率等),仅通过这些信息无法有效分析程序的Cache行为。本文首先针对当前Cache性能分析工具不能获得详尽的Cache性能数据这一问题,提出了一种基于二进制插桩和模拟的在线Cache性能分析方法。在此基础上,提出了多核并行程序Cache性能评价指标,并对这些性能评价指标的测量和计算方法进行了研究。最后,设计并实现了基于二进制插桩和模拟的在线Cache性能分析原型系统。相比于现有的技术,这种方法可以获取程序在多种配置的Cache架构上运行的性能,能够分析Cache缺失产生的原因,能够分析程序在共享Cache上的行为,能够分析程序不同线程对Cache块的竞争情况,能够获得更多现有工具测量不到的数据,能够在线获得程序运行时的Cache性能,无需额外空间来存储访存踪迹。本文最后验证了Cache性能分析工具的精确性,利用工具对NPB程序Cache性能进行了详细的分析,并通过实例说明了工具在分析程序Cache性能、指导Cache性能优化方面的有效性。