| 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.59 | 3.59 | 34.69 | 1.00 | 1.82 | 7.27 | 1.00 | 1 | 0.00 | 15.00 | 5.80 | 2.00 | 2.00 | 1.10 | 0.28 | 2.00 |
| ○Loop 14 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 3.10 | 3.10 | 30.00 | 1.00 | 1.82 | 7.27 | 1.00 | 1 | 0.00 | 15.00 | 6.69 | 2.00 | 2.00 | 1.10 | 0.28 | 2.00 |
| ○Loop 4 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.78 | 0.78 | 7.55 | 1.00 | 1.82 | 7.27 | 1.00 | 1 | 0.00 | 15.00 | 6.92 | 2.00 | 2.00 | 1.10 | 0.28 | 2.00 |
| ○Loop 7 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.76 | 0.76 | 7.35 | 1.00 | 1.82 | 7.27 | 1.00 | 1 | 0.00 | 15.00 | 6.49 | 2.00 | 2.00 | 1.10 | 0.28 | 2.00 |
| ○Loop 10 | attention-gcc-native | attention_v2.cpp:30-31 | main | Innermost | 0.73 | 0.73 | 7.01 | 1.00 | 1.82 | 7.27 | 1.00 | 1 | 0.00 | 15.00 | 7.10 | 2.00 | 2.00 | 1.10 | 0.28 | 2.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.06 | 0.06 | 0.58 | 1.38 | 3.30 | 6.77 | 4.13 | 2 | 0.00 | 20.31 | 2.35 | 4.13 | 3.00 | 1.25 | 0.61 | 1.00 |
| ○Loop 15 | attention-gcc-native | attention_v2.cpp:27-30,attention_v2.cpp:33-33,attention_v2.cpp:233-233 | main | InBetween | 0.05 | 0.04 | 0.44 | 1.25 | 1.25 | 7.27 | 1.25 | 1 | 0.00 | 17.50 | 9.25 | 1.25 | 1.00 | 1.00 | 0.17 | 1.00 |
| ○Loop 31 | attention-gcc-native | attention_v2.cpp:55-56 | softmax(float const*, float*, float*, int) | Innermost | 0.04 | 0.04 | 0.39 | 1.00 - 1.13 | 1.35 | 4.57 - 4.00 | 1.00 | 1 | 0.00 | 12.50 | 3.31 | 1.00 - 1.13 | 1.00 | 0.83 | 0.22 - 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.04 | 0.04 | 0.34 | 2.85 | 3.56 | 7.13 | 2.85 | 16 | 0.00 | 20.59 | 3.96 | 14.25 | 5.00 | 4.00 | 2.00 | 5.00 |
| ○Loop 22 | attention-gcc-native | stl_vector.h:1128-1128,attention_v2.cpp:237-238 | main | Innermost | 0.04 | 0.04 | 0.34 | 1.00 | 1.00 | 7.00 | 2.33 | 1 | 14.29 | 14.29 | 0.00 | 2.33 | 2.33 | 2.33 | 0.33 | 1.00 |
| ○Loop 42 | attention-gcc-native | random.tcc:412-417 | std::mersenne_twister_engine | Single | 0.04 | 0.04 | 0.34 | 1.00 | 1.00 | 1.33 | 2.00 | 1 | 100.00 | 54.55 | 0.00 | 2.00 | 2.00 | 2.00 | 1.50 | 1.00 |
| ○Loop 30 | attention-gcc-native | attention_v2.cpp:52-53 | softmax(float const*, float*, float*, int) | Innermost | 0.03 | 0.03 | 0.29 | 1.00 | 3.69 | 8.00 | 1.00 | 1 | 0.00 | 12.50 | 3.13 | 2.00 | 2.00 | 0.54 | 0.25 | 2.00 |
| ○Loop 19 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.03 | 0.02 | 0.24 | 1.00 | 1.00 | 8.00 | 1.25 | 1 | 0.00 | 12.50 | 2.95 | 1.25 | 1.25 | 1.25 | 0.16 | 1.00 |
| ○Loop 8 | attention-gcc-native | attention_v2.cpp:26-30,attention_v2.cpp:33-33 | main | InBetween | 0.02 | 0.02 | 0.19 | 1.25 | 1.00 | 8.00 | 1.25 | 1 | 0.00 | 18.75 | 4.81 | 1.25 | 1.00 | 1.25 | 0.16 | 1.00 |
| ○Loop 16 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.02 | 0.01 | 0.15 | 1.00 | 1.00 | 8.00 | 1.25 | 1 | 0.00 | 12.50 | 4.33 | 1.25 | 1.25 | 1.25 | 0.16 | 1.00 |
| ○Loop 41 | attention-gcc-native | random.tcc:404-409 | std::mersenne_twister_engine | Single | 0.02 | 0.01 | 0.15 | 1.00 | 1.00 | 1.00 | 3.00 | 1 | 100.00 | 100.00 | 0.08 | 3.00 | 3.00 | 3.00 | 3.00 | 1.00 |
| ○Loop 6 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.01 | 0.01 | 0.10 | 1.00 | 1.00 | 8.00 | 1.00 | 1 | 0.00 | 12.50 | 7.13 | 1.00 | 1.00 | 1.00 | 0.13 | 1.00 |
| ○Loop 33 | attention-gcc-native | attention_v2.cpp:44-44,attention_v2.cpp:47-47,attention_v2.cpp:50-52,attention_v2.cpp:58-61 | softmax(float const*, float*, float*, int) | InBetween | 0.01 | 0.01 | 0.10 | 1.56 | 1.00 | 1.54 | 5.60 | 1 | 26.67 | 47.50 | 1.50 | 7.00 | 4.50 | 7.00 | 4.55 | 1.25 |
| ○Loop 1 | attention-gcc-native | random.h:248-248,random.tcc:333-339 | main | Innermost | 0.01 | 0.01 | 0.10 | 1.00 | 1.00 | 6.00 | 1.00 | 1 | 0.00 | 20.83 | 0.00 | 3.00 | 3.00 | 3.00 | 0.50 | 3.00 |
| ○Loop 29 | attention-gcc-native | attention_v2.cpp:47-48 | softmax(float const*, float*, float*, int) | Innermost | 0.01 | 0.01 | 0.10 | 1.00 | 1.00 | 1.00 | 1.00 | 1 | 100.00 | 100.00 | 1.13 | 2.00 | 2.00 | 2.00 | 2.00 | 2.00 |
| ○Loop 18 | attention-gcc-native | attention_v2.cpp:26-30,attention_v2.cpp:33-33 | main | InBetween | 0.00 | 0.01 | 0.05 | 1.25 | 1.00 | 8.00 | 1.25 | 1 | 0.00 | 18.75 | 14.00 | 1.25 | 1.00 | 1.25 | 0.16 | 1.00 |
| ○Loop 12 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.00 | 0.01 | 0.05 | 1.00 | 1.00 | 8.00 | 1.00 | 1 | 0.00 | 12.50 | 15.50 | 1.00 | 1.00 | 1.00 | 0.13 | 1.00 |
| ○Loop 11 | attention-gcc-native | attention_v2.cpp:26-30,attention_v2.cpp:33-33 | main | InBetween | 0.00 | 0.01 | 0.05 | 1.25 | 1.00 | 8.00 | 1.25 | 1 | 0.00 | 18.75 | 17.75 | 1.25 | 1.00 | 1.25 | 0.16 | 1.00 |
| ○Loop 9 | attention-gcc-native | attention_v2.cpp:26-27 | main | InBetween | 0.00 | 0.01 | 0.05 | 1.00 | 1.00 | 8.00 | 1.00 | 1 | 0.00 | 12.50 | 11.25 | 1.00 | 1.00 | 1.00 | 0.13 | 1.00 |
| ○Loop 32 | attention-gcc-native | attention_v2.cpp:47-48 | softmax(float const*, float*, float*, int) | Innermost | 0.00 | 0.01 | 0.05 | 1.00 | 1.00 | 1.00 | 1.00 | 1 | 100.00 | 100.00 | 1.50 | 2.00 | 2.00 | 2.00 | 2.00 | 2.00 |