Hardware-Software Collaborative Techniques for Runtime Profiling and Phase Transition Detection
Hardware-Software Collaborative Techniques for Runtime Profiling and Phase Transition Detection作者机构:Corporate Technology Group Intel Corporation 2200 Mission College Blvd Santa Clara CA 95054 U.S.A. Software and Solutions Group Intel Corporation 2200 Mission College Blvd Santa Clara CA 95054 U.S.A.
出 版 物:《Journal of Computer Science & Technology》 (计算机科学技术学报(英文版))
年 卷 期:2005年第20卷第5期
页 面:665-675页
核心收录:
学科分类:08[工学] 0812[工学-计算机科学与技术(可授工学、理学学位)]
主 题:runtime profiling dynamic optimizations phase transition detection hardware-software collaboration
摘 要:Dynamic optimization relies on runtime profile information to improve the performance of program execution. Traditional profiling techniques incur significant overhead and are not suitable for dynamic optimization. In this paper, a new profiling technique is proposed, that incorporates the strength of both software and hardware to achieve near-zero overhead profiling. The compiler passes profiling requests as a few bits of information in branch instructions to the hardware, and the processor executes profiling operations asynchronously in available free slots or on dedicated hardware. The compiler instrumentation of this technique is implemented using an Itanium research compiler. The result shows that the accurate block profiling incurs very little overhead to the user program in terms of the program scheduling cycles. For example, the average overhead is 0.6% for the SPECint95 benchmarks. The hardware support required for the new profiling is practical. The technique is extended to collect edge profiles for continuous phase transition detection. It is believed that the hardware-software collaborative scheme will enable many profile-driven dynamic optimizations for EPIC processors such as the Itanium processors.