TY - GEN
T1 - An evaluation of vectorizing compilers
AU - Maleki, Saeed
AU - Gao, Yaoqing
AU - Garzarán, María J.
AU - Wong, Tommy
AU - Padua, David A.
PY - 2011
Y1 - 2011
N2 - Most of today's processors include vector units that have been designed to speedup single threaded programs. Although vector instructions can deliver high performance, writing vector code in assembly language or using intrinsics in high level languages is a time consuming and error-prone task. The alternative is to automate the process of vectorization by using vectorizing compilers. This paper evaluates how well compilers vectorize a synthetic benchmark consisting of 151 loops, two application from Petascale Application Collaboration Teams (PACT), and eight applications from Media Bench II. We evaluated three compilers: GCC (version 4.7.0), ICC (version 12.0) and XLC (version 11.01). Our results show that despite all the work done in vectorization in the last 40 years 45-71% of the loops in the synthetic benchmark and only a few loops from the real applications are vectorized by the compilers we evaluated.
AB - Most of today's processors include vector units that have been designed to speedup single threaded programs. Although vector instructions can deliver high performance, writing vector code in assembly language or using intrinsics in high level languages is a time consuming and error-prone task. The alternative is to automate the process of vectorization by using vectorizing compilers. This paper evaluates how well compilers vectorize a synthetic benchmark consisting of 151 loops, two application from Petascale Application Collaboration Teams (PACT), and eight applications from Media Bench II. We evaluated three compilers: GCC (version 4.7.0), ICC (version 12.0) and XLC (version 11.01). Our results show that despite all the work done in vectorization in the last 40 years 45-71% of the loops in the synthetic benchmark and only a few loops from the real applications are vectorized by the compilers we evaluated.
UR - http://www.scopus.com/inward/record.url?scp=84863012838&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84863012838&partnerID=8YFLogxK
U2 - 10.1109/PACT.2011.68
DO - 10.1109/PACT.2011.68
M3 - Conference contribution
AN - SCOPUS:84863012838
SN - 9780769545660
T3 - Parallel Architectures and Compilation Techniques - Conference Proceedings, PACT
SP - 372
EP - 382
BT - Proceedings - 2011 International Conference on Parallel Architectures and Compilation Techniques, PACT 2011
T2 - 20th International Conference on Parallel Architectures and Compilation Techniques, PACT 2011
Y2 - 10 October 2011 through 14 October 2011
ER -