TY - JOUR
T1 - alto
T2 - a link-time optimizer for the Compaq Alpha
AU - Muth, Robert
AU - Debray, Saumya K.
AU - Watterson, Scott
AU - De Bosschere, Koen
PY - 2001/1
Y1 - 2001/1
N2 - Traditional optimizing compilers are limited in the scope of their optimizations by the fact that only a single function, or possibly a single module, is available for analysis and optimization. In particular, this means that library routines cannot be optimized to specific calling contexts. Other optimization opportunities, exploiting information not available before link time, such as addresses of variables and the final code layout, are often ignored because linkers are traditionally unsophisticated. A possible solution is to carry out whole-program optimization at link time. This paper describes alto, a link-time optimizer for the Compaq Alpha architecture. It is able to realize significant performance improvements even for programs compiled with a good optimizing compiler with a high level of optimization. The resulting code is considerably faster than that obtained using the OM link-time optimizer, even when the latter is used in conjunction with profile-guided and inter-file compile-time optimizations.
AB - Traditional optimizing compilers are limited in the scope of their optimizations by the fact that only a single function, or possibly a single module, is available for analysis and optimization. In particular, this means that library routines cannot be optimized to specific calling contexts. Other optimization opportunities, exploiting information not available before link time, such as addresses of variables and the final code layout, are often ignored because linkers are traditionally unsophisticated. A possible solution is to carry out whole-program optimization at link time. This paper describes alto, a link-time optimizer for the Compaq Alpha architecture. It is able to realize significant performance improvements even for programs compiled with a good optimizing compiler with a high level of optimization. The resulting code is considerably faster than that obtained using the OM link-time optimizer, even when the latter is used in conjunction with profile-guided and inter-file compile-time optimizations.
UR - http://www.scopus.com/inward/record.url?scp=0035111361&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0035111361&partnerID=8YFLogxK
U2 - 10.1002/1097-024X(200101)31:1<67::AID-SPE357>3.0.CO;2-A
DO - 10.1002/1097-024X(200101)31:1<67::AID-SPE357>3.0.CO;2-A
M3 - Article
AN - SCOPUS:0035111361
VL - 31
SP - 67
EP - 101
JO - Software - Practice and Experience
JF - Software - Practice and Experience
SN - 0038-0644
IS - 1
ER -