比较检查:优化器调试的新方法

0 下载量 110 浏览量 更新于2024-06-17 收藏 436KB PDF 举报
"这篇学术论文‘比较检查:提高优化器调试效果的新技术’探讨了一种名为比较检查的新方法,旨在帮助程序优化器的开发者更好地调试其优化器。该技术主要针对那些不会改变程序语义的优化应用。文章指出,随着编译器优化的重要性日益增加,调试优化代码的挑战也随之增加,因为错误可能源自源代码本身或优化过程。比较检查通过自动化执行未优化和优化后的程序,并对比它们的语义行为,来识别潜在问题。 比较检查的关键步骤包括自动执行源程序的两个版本并比较其行为。它关注三个方面:(1)确保两个版本沿相同的执行路径;(2)验证源级别的赋值计算出相同的值和访问相同的内存位置;(3)检查输出是否一致。此外,对于涉及数组和指针的赋值,还需确认赋值的地址对应。如果所有条件满足,比较则成功;否则,表明可能存在优化器错误。 文中详述了比较检查如何应用于高级循环变换、低级代码优化和全局寄存器分配等程序转换的测试。作者们展示了这一技术在实践中是如何实现的,以及它如何帮助优化器开发者检测和修复问题,从而提高编译器优化的质量和可靠性。" 这篇研究工作不仅提出了一个创新的调试技术,还强调了在计算机科学领域,特别是在编译器优化方面,调试工具的重要性和持续发展的需求。比较检查作为自动化测试的一部分,可以显著提升调试效率,确保优化器的正确性,这对于追求高性能计算的应用至关重要。