论文部分内容阅读
处理器设计的日益复杂和设计时间上的限制,使得更为有效地进行处理器性能分析和优化成为当代处理器设计者面临的重大问题和挑战。 硬件性能监视器是现代处理器芯片中提供的一组专用寄存器,能在程序执行过程中统计特定硬件事件发生的次数,用于性能剖析。基于硬件性能监视器的性能分析结合硬件平台的系统结构特点,分析程序行为、寻找性能瓶颈,已经成为了一个重要课题。 本论文以基于硬件性能监视器的性能分析为主要研究对象,论文工作中首先详细调研和介绍了性能分析原理,分别介绍了模拟器,插桩和采样的性能分析原理,在此基础上详细介绍了几种常见的各自有其代表性软件性能分析工具。随后的主要工作集中于PKUnity86平台,主要研究内容包括以下两个方面。 1)剖析以及获取必要的性能指标。利用该平台集成的硬件性能监视器并移植相应的软件工具perfctr,对程序运行性能进行剖析以及获取必要的性能指标。大致了解程序整体性能的基础上以访存性能为目标进行性能分析,探索了写策略对目标程序的影响情况及其原因。随后以gzip为目标负载,通过硬件性能监视器获取硬件底层数据得到了一个简单的性能指标集。 2)总结处理器硬件性能监视器设计,并基于PKUnity86平台,重新设计硬件性能监视器,使其为性能分析提供比较健全的硬件支持。本文首先讨论了处理器中硬件性能监视器的设计,及其可能遇到的问题和采用解决方案等等,然后基于PKUnity86平台的硬件性能监视器,完善了支持阈值预设置和中断功能,支持硬件计数暂停功能。 通过本文的工作,程序开发人员可以了解基于硬件性能监视器的性能分析技术的软硬件协同;基于PKUnity86平台,移植相应的软件工具精确测量程序运行时间分布,从而更好更快地进行性能分析工作。