| ID | Module | Source Location | Source Function | Level | Max Time Over Threads (s) | Time w.r.t. Wall Time (s) | Coverage (% app. time) | Speedup if no scalar integer | Speedup if FP arith vectorized | Speedup if fully vectorized | Speedup if FP only | Number of paths | Vectorization Ratio (%) | Vector Length Use (%) | Flops (GFLOP/s) | CQA cycles | CQA cycles if no scalar integer | CQA cycles if FP arith vectorized | CQA cycles if fully vectorized | CQA cycles if FP only |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ○Loop 17 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 3.13 | 3.13 | 36.09 | 1.00 | 1.43 | 3.64 | 1.00 | 1 | 0.00 | 30.00 | 6.56 | 2.00 | 2.00 | 1.40 | 0.55 | 2.00 |
| ○Loop 14 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 2.57 | 2.57 | 29.68 | 1.00 | 1.43 | 3.64 | 1.00 | 1 | 0.00 | 30.00 | 8.07 | 2.00 | 2.00 | 1.40 | 0.55 | 2.00 |
| ○Loop 10 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.65 | 0.64 | 7.45 | 1.00 | 1.43 | 3.64 | 1.00 | 1 | 0.00 | 30.00 | 8.09 | 2.00 | 2.00 | 1.40 | 0.55 | 2.00 |
| ○Loop 4 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.61 | 0.61 | 6.99 | 1.00 | 1.43 | 3.64 | 1.00 | 1 | 0.00 | 30.00 | 8.76 | 2.00 | 2.00 | 1.40 | 0.55 | 2.00 |
| ○Loop 7 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.59 | 0.58 | 6.76 | 1.00 | 1.43 | 3.64 | 1.00 | 1 | 0.00 | 30.00 | 8.68 | 2.00 | 2.00 | 1.40 | 0.55 | 2.00 |
| ○Loop 18 | attention-gcc-native | attention_v2.cpp:26-30,attention_v2.cpp:33-33 | main | InBetween | 0.16 | 0.16 | 1.85 | 1.13 | 1.00 | 3.60 | 1.13 | 1 | 0.00 | 37.50 | 4.19 | 1.13 | 1.00 | 1.13 | 0.31 | 1.00 |
| ○Loop 2 | attention-gcc-native | attention_v2.cpp:163-163,random.tcc:333-333,random.tcc:458-466,random.tcc:3367-3371 | main | Innermost | 0.04 | 0.04 | 0.52 | 1.35 | 2.31 | 3.44 | 4.08 | 2 | 0.00 | 40.63 | 2.83 | 3.06 | 2.27 | 1.33 | 0.89 | 0.75 |
| ○Loop 15 | attention-gcc-native | attention_v2.cpp:27-30,attention_v2.cpp:33-33,attention_v2.cpp:233-233 | main | InBetween | 0.04 | 0.04 | 0.46 | 1.25 | 1.25 | 3.64 | 1.25 | 1 | 0.00 | 35.00 | 11.03 | 1.25 | 1.00 | 1.00 | 0.34 | 1.00 |
| ○Loop 31 | attention-gcc-native | attention_v2.cpp:55-56 | softmax(float const*, float*, float*, int) | Innermost | 0.04 | 0.04 | 0.46 | 1.00 - 1.13 | 1.35 | 4.00 | 1.00 | 1 | 0.00 | 25.00 | 4.38 | 1.00 - 1.13 | 1.00 | 0.83 | 0.25 - 0.28 | 1.00 - 1.13 |
| ○Loop 24 | attention-gcc-native | attention_v2.cpp:164-167,random.tcc:458-466,random.tcc:3367-3374 | main | Innermost | 0.03 | 0.02 | 0.29 | 3.26 | 2.48 | 3.59 | 3.26 | 16 | 0.00 | 41.18 | 4.90 | 11.00 | 3.38 | 4.44 | 3.06 | 3.38 |
| ○Loop 22 | attention-gcc-native | stl_vector.h:1128-1128,attention_v2.cpp:237-238 | main | Innermost | 0.03 | 0.02 | 0.29 | 1.00 | 1.00 | 3.50 | 2.33 | 1 | 14.29 | 28.57 | 0.00 | 2.33 | 2.33 | 2.33 | 0.67 | 1.00 |
| ○Loop 8 | attention-gcc-native | attention_v2.cpp:26-30,attention_v2.cpp:33-33 | main | InBetween | 0.02 | 0.02 | 0.23 | 1.13 | 1.00 | 3.60 | 1.13 | 1 | 0.00 | 37.50 | 4.88 | 1.13 | 1.00 | 1.13 | 0.31 | 1.00 |
| ○Loop 30 | attention-gcc-native | attention_v2.cpp:52-53 | softmax(float const*, float*, float*, int) | Innermost | 0.02 | 0.02 | 0.23 | 1.00 | 2.67 | 4.00 | 1.00 | 1 | 0.00 | 25.00 | 6.25 | 2.00 | 2.00 | 0.75 | 0.50 | 2.00 |
| ○Loop 42 | attention-gcc-native | random.tcc:412-417 | std::mersenne_twister_engine | Single | 0.01 | 0.02 | 0.17 | 1.00 | 1.00 | 1.00 | 1.75 | 1 | 100.00 | 100.00 | 0.00 | 1.75 | 1.75 | 1.75 | 1.75 | 1.00 |
| ○Loop 19 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.01 | 0.01 | 0.12 | 1.00 | 1.00 | 4.00 | 1.00 | 1 | 0.00 | 25.00 | 2.13 | 1.00 | 1.00 | 1.00 | 0.25 | 1.00 |
| ○Loop 41 | attention-gcc-native | random.tcc:404-409 | std::mersenne_twister_engine | Single | 0.01 | 0.01 | 0.12 | 1.00 | 1.00 | 1.00 | 1.75 | 1 | 100.00 | 100.00 | 0.38 | 1.75 | 1.75 | 1.75 | 1.75 | 1.00 |
| ○Loop 6 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.00 | 0.00 | 0.06 | 1.00 | 1.00 | 4.00 | 1.00 | 1 | 0.00 | 25.00 | 5.75 | 1.00 | 1.00 | 1.00 | 0.25 | 1.00 |
| ○Loop 5 | attention-gcc-native | attention_v2.cpp:27-30,attention_v2.cpp:33-33,random.tcc:3374-3374 | main | InBetween | 0.00 | 0.00 | 0.06 | 1.13 | 1.00 | 3.60 | 1.13 | 1 | 0.00 | 37.50 | 23.25 | 1.13 | 1.00 | 1.13 | 0.31 | 1.00 |
| ○Loop 33 | attention-gcc-native | attention_v2.cpp:44-47,attention_v2.cpp:50-52,attention_v2.cpp:58-61 | softmax(float const*, float*, float*, int) | InBetween | 0.00 | 0.00 | 0.06 | 2.20 | 1.00 | 1.31 | 13.20 | 1 | 24.14 | 56.03 | 4.25 | 5.50 | 2.50 | 5.50 | 4.19 | 0.42 |
| ○Loop 32 | attention-gcc-native | attention_v2.cpp:47-48 | softmax(float const*, float*, float*, int) | Innermost | 0.00 | 0.00 | 0.06 | 1.00 | 1.00 | 1.00 | 1.00 | 1 | 100.00 | 100.00 | 4.25 | 2.00 | 2.00 | 2.00 | 2.00 | 2.00 |
| ○Loop 29 | attention-gcc-native | attention_v2.cpp:47-48 | softmax(float const*, float*, float*, int) | Innermost | 0.00 | 0.00 | 0.06 | 1.00 | 1.00 | 1.00 | 1.00 | 1 | 100.00 | 100.00 | 2.25 | 2.00 | 2.00 | 2.00 | 2.00 | 2.00 |