Optimizing structures in object oriented programs

INTERACT '05 Proceedings of the 9th Annual Workshop on Interaction between Compilers and Computer Architectures(2005)

引用 3|浏览4
暂无评分
摘要
In this paper we demonstrate that effective structure optimization is essential to improve code quality and reduce compilation overhead for object-oriented programs. We propose to address this problem by using an effective representation of structure operation, folding indirect memory accesses to structure fields, flattening structures judiciously, and allowing more aggressive procedure inlining. These techniques enable the existing scalar optimizations, which were well tuned for the traditional imperative languages, to work effectively on object-oriented programs, allowing them to make better use of the performance enhancing-features available on modern processors. We have implemented this strategy in an SSA based global optimization framework in the Open Research Compiler, targeting the Itanium Processor Family. The experimental results with representative C++ benchmarks show that the applications' performance can be improved significantly. For instance, Eon's performance is improved by 35.6%, while the execution time of the Stepanov benchmark is reduced by a factor of 24.
更多
查看译文
关键词
open research compiler,itanium processor family,speculative thread,c++ benchmark,c++ language,object oriented programs,program compiler,object-oriented programming,program control structures,indirect memory accesses,trace-level speculation,optimising compilers,procedure inlining,structure optimization,object-oriented program,trace-level speculative multithreaded processors,optimizing structures,object oriented programming,global optimization
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要