Help is available by moving the cursor above any
symbol or by checking MAQAO website.
- r0: run_1_thread
- r1: run_2_threads
- r2: run_4_threads
- r3: run_8_threads
- r4: run_16_threads
- r5: run_32_threads
- r6: run_48_threads
- r7: run_64_threads
- r8: run_80_threads
- r9: run_96_threads
Metric | r0 | r1 | r2 | r3 | r4 | r5 | r6 | r7 | r8 | r9 |
---|
Total Time (s) | 89.65 | 51.11 | 29.59 | 18.24 | 13.67 | 10.57 | 9.54 | 9.09 | 8.88 | 8.72 |
Max (Thread Active Time) (s) | 89.42 | 50.53 | 28.82 | 18.15 | 12.50 | 10.10 | 9.26 | 8.88 | 8.66 | 8.52 |
Average Active Time (s) | 89.42 | 45.81 | 22.55 | 11.16 | 5.90 | 2.96 | 2.02 | 1.56 | 1.34 | 1.18 |
Activity Ratio (%) | 99.7 | 89.6 | 76.2 | 61.2 | 43.2 | 28.0 | 21.2 | 17.2 | 15.1 | 13.6 |
Average number of active threads | 0.997 | 1.793 | 3.048 | 4.897 | 6.906 | 8.948 | 10.162 | 10.997 | 12.052 | 13.025 |
Affinity Stability (%) | 100.0 | 99.6 | 99.1 | 98.0 | 97.5 | 96.8 | 96.5 | 96.3 | 96.1 | 96.0 |
GFLOPS | 3.732 | 6.718 | 11.438 | 18.486 | 26.334 | 34.698 | 39.244 | 44.300 | 49.091 | 52.982 |
Time in analyzed loops (%) | 100.0 | 100.0 | 100.0 | 100.0 | 99.9 | 99.7 | 99.7 | 99.7 | 99.6 | 99.5 |
Time in analyzed innermost loops (%) | 97.1 | 97.1 | 97.4 | 97.5 | 97.1 | 97.0 | 97.1 | 97.0 | 96.6 | 96.8 |
Time in user code (%) | 100 | 100 | 100.0 | 100.0 | 99.9 | 99.8 | 99.7 | 99.7 | 99.6 | 99.5 |
Compilation Options Score (%) | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 | 75.0 |
Array Access Efficiency (%) | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 | 25.0 |
|
Potential Speedups |  |
Perfect Flow Complexity | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 |
Perfect OpenMP + MPI + Pthread | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 |
Perfect OpenMP + MPI + Pthread + Perfect Load Distribution | 1.00 | 1.10 | 1.28 | 1.63 | 2.12 | 3.42 | 4.60 | 5.71 | 6.50 | 7.23 |
Scalability - Gap | 1.00 | 1.14 | 1.32 | 1.63 | 2.44 | 3.77 | 5.11 | 6.49 | 7.93 | 9.34 |
No Scalar Integer | Potential Speedup | 3.06 | 3.06 | 3.08 | 3.08 | 3.07 | 3.07 | 3.08 | 3.08 | 3.06 | 3.09 |
Nb Loops to get 80% | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
FP Vectorised | Potential Speedup | 1.63 | 1.63 | 1.64 | 1.64 | 1.64 | 1.63 | 1.64 | 1.64 | 1.64 | 1.64 |
Nb Loops to get 80% | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Fully Vectorised | Potential Speedup | 1.31 | 1.31 | 1.31 | 1.31 | 1.31 | 1.31 | 1.30 | 1.30 | 1.30 | 1.30 |
Nb Loops to get 80% | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 | 2 |
Only FP Arithmetic | Potential Speedup | 2.32 | 2.31 | 2.32 | 2.33 | 2.31 | 2.31 | 2.31 | 2.31 | 2.29 | 2.30 |
Nb Loops to get 80% | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
Source Object | Issue |
▼kmeans-gcc-O3-vectorize– | |
▼main.cpp– | |
○ | -funroll-loops is missing. |
| r0 | r1 | r2 | r3 | r4 | r5 | r6 | r7 | r8 | r9 |
Experiment Name | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 | K-Means scalability gcc-O3-vectorize 100000000 |
Application | ./kmeans/kmeans-gcc-O3-vectorize | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Timestamp | 2025-06-24 09:49:32 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Experiment Type | Sequential | OpenMP; | same as r1 | same as r1 | same as r1 | same as r1 | same as r1 | same as r1 | same as r1 | same as r1 |
Machine | ip-172-31-47-249.ec2.internal | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Architecture | aarch64 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Micro Architecture | ARM_NEOVERSE_V2 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Model Name | | | | | | | | | | |
Cache Size | | | | | | | | | | |
Number of Cores | | | | | | | | | | |
Maximal Frequency | 0 GHz | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
OS Version | Linux 6.1.109-118.189.amzn2023.aarch64 #1 SMP Tue Sep 10 08:58:40 UTC 2024 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Architecture used during static analysis | aarch64 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Micro Architecture used during static analysis | ARM_NEOVERSE_V2 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Compilation Options |
kmeans-gcc-O3-vectorize: GNU C++14 14.2.0 -mlittle-endian -mabi=lp64 -mcpu=neoverse-v2+crc+sve2-aes+sve2-sha3+nossbs -g -O3 -std=c++14 -fno-omit-frame-pointer -fopenmp -ftree-vectorize | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Number of processes observed | 1 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Number of threads observed | 1 | 2 | 4 | 8 | 16 | 32 | 48 | 64 | 80 | 96 |
Frequency Driver | NA | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Frequency Governor | NA | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Huge Pages | madvise | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Hyperthreading | off | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Number of sockets | 1 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Number of cores per socket | 96 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
MAQAO version | 2025.1.0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
MAQAO build | 1cd8232d3b2009bc695f526f903b266bda9bb996::20250623-181852 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |
Comments | AWS Graviton 4 (Neoverse V2) CPU, 1-96 threads runs | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 | same as r0 |