Improving Program Performance via Auto-Vectorization of Loops with Conditional Statements with GCC Compiler Setting

The GCC is an auto-vectorization compiler across iterations of loops to parallelism data. Turning GCC compiler optimizations flags for auto-vectorization is a way to improve the performance ability, which is a popular approach to speed up program performance. However, there are many options in GCC c...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Applied Mechanics and Materials 2013-10, Vol.433-435 (Advances in Mechatronics and Control Engineering II), p.1410-1414
1. Verfasser: Zhu, Qi Shen
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The GCC is an auto-vectorization compiler across iterations of loops to parallelism data. Turning GCC compiler optimizations flags for auto-vectorization is a way to improve the performance ability, which is a popular approach to speed up program performance. However, there are many options in GCC compiler and selecting the best combination of these options to improve program performance through vectorization is non-trivial ( as the search space is very large ).In this work we focus on the selection of compiler transformations to auto-vectorize loops with conditional statements. The selection of compiler transformations is based on the correlation between program features, speed-up, and the analysis of the code generated and a small number of passes of iterative compilation. Our preliminary experimental results show that proposed technique attains performance improvements the best ~ 6x using loops in the TSVC benchmark suite on the state-of-the-art Intel Core i3 processor.
ISSN:1660-9336
1662-7482
1662-7482
DOI:10.4028/www.scientific.net/AMM.433-435.1410