Review Article
Evaluation of Compilers’ Capability of Automatic Vectorization Based on Source Code Analysis
Table 4
Automatic vectorization speedup ratio.
| Group | Type | Numbers | GCC | LLVM | ICC |
| Feature | Control flow | 16 | 2|1.36 | 1|0.90 | 13|1.94 | Function | 6 | 4|1.93 | 5|1.82 | 6|2.24 | Goto | 12 | 1|1.99 | 0 | 7|1.76 | Indirect addressing | 10 | 0 | 1|0.99 | 0 | Induction | 10 | 8|2.00 | 4|1.5 | 7|1.79 | No dependency | 16 | 12|2.15 | 9|2.12 | 11|2.96 | Loop reversal | 2 | 2|1.89 | 1|1.91 | 1|2.03 | Reduction | 16 | 9|8.81 | 0 | 13|3.66 | Regular dependency | 9 | 3|1.5 | 2|1.91 | 2|1.41 | Rerolling | 3 | 1|2.33 | 3|1.00 | 2|2.68 | Alias | 5 | 5|2.29 | 5|2.44 | 4|1.25 | Symbolic resolution | 10 | 10|2.45 | 9|2.43 | 7|2.29 | Method | Node splitting | 6 | 1|1.01 | 2|1.93 | 6|2.28 | Loop distribution | 3 | 1|4.02 | 0 | 3|1.51 | Loop interchanging | 6 | 3|2.20 | 1|1.07 | 3|1.81 | Loop peeling | 4 | 0 | 0 | 2|2.51 | Scalar expansion | 14 | 6|1.82 | 6|1.82 | 8|1.81 | Statement reordering | 3 | 0 | 0 | 3|1.77 |
|
|