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_10_threads
| Metric | r0 | r1 | r2 | r3 | r4 |
|---|
| Total Time (s) | 106.99 | 58.58 | 34.26 | 20.90 | 18.18 |
| Max (Thread Active Time) (s) | 106.72 | 58.08 | 33.97 | 20.85 | 18.13 |
| Average Active Time (s) | 106.72 | 54.58 | 28.70 | 14.70 | 11.79 |
| Activity Ratio (%) | 99.7 | 93.2 | 83.8 | 70.4 | 64.9 |
| Average number of active threads | 0.997 | 1.864 | 3.351 | 5.628 | 6.488 |
| Affinity Stability (%) | 100.0 | 99.7 | 99.3 | 98.8 | 98.5 |
| GFLOPS | 5.888 | 10.754 | 18.388 | 30.142 | 34.653 |
| Time in analyzed loops (%) | 100.0 | 99.9 | 99.6 | 99.2 | 98.9 |
| Time in analyzed innermost loops (%) | 94.2 | 94.2 | 93.4 | 93.2 | 92.9 |
| Time in user code (%) | 100.0 | 99.9 | 99.6 | 99.2 | 98.9 |
| Compilation Options Score (%) | 100 | 100 | 100 | 100 | 100 |
| Array Access Efficiency (%) | 40.0 | 40.0 | 40.0 | 40.0 | 40.0 |
|
| Potential Speedups |  |
| Perfect Flow Complexity | 4.27 | 4.29 | 4.22 | 4.20 | 4.16 |
| Perfect OpenMP + MPI + Pthread | 1.00 | 1.00 | 1.00 | 1.00 | 1.00 |
| Perfect OpenMP + MPI + Pthread + Perfect Load Distribution | 1.00 | 1.07 | 1.19 | 1.43 | 1.55 |
| Scalability - Gap | 1.00 | 1.10 | 1.28 | 1.56 | 1.70 |
| No Scalar Integer | Potential Speedup | 1.03 | 1.03 | 1.03 | 1.03 | 1.03 |
| Nb Loops to get 80% | 2 | 2 | 2 | 2 | 2 |
| FP Vectorised | Potential Speedup | 2.26 | 2.26 | 2.26 | 2.25 | 2.25 |
| Nb Loops to get 80% | 1 | 1 | 1 | 1 | 1 |
| Fully Vectorised | Potential Speedup | 8.24 | 8.16 | 8.04 | 7.78 | 7.64 |
| Nb Loops to get 80% | 3 | 3 | 3 | 3 | 3 |
| Only FP Arithmetic | Potential Speedup | 1.32 | 1.32 | 1.32 | 1.31 | 1.31 |
| Nb Loops to get 80% | 2 | 2 | 2 | 2 | 2 |
| Source Object | Issue |
| ▼kmeans-gcc-O3-funroll– | |
| ▼main.cpp– | |
| ○ | |
| Source Object | Issue |
| ▼kmeans-gcc-O3-funroll– | |
| ▼main.cpp– | |
| ○ | |
| Source Object | Issue |
| ▼kmeans-gcc-O3-funroll– | |
| ▼main.cpp– | |
| ○ | |
| Source Object | Issue |
| ▼kmeans-gcc-O3-funroll– | |
| ▼main.cpp– | |
| ○ | |
| Source Object | Issue |
| ▼kmeans-gcc-O3-funroll– | |
| ▼main.cpp– | |
| ○ | |
| r0 | r1 | r2 | r3 | r4 |
| Experiment Name | K-Means scalability gcc-O3-funroll 100000000 | K-Means scalability gcc-O3-funroll 100000000 | K-Means scalability gcc-O3-funroll 100000000 | K-Means scalability gcc-O3-funroll 100000000 | K-Means scalability gcc-O3-funroll 100000000 |
| Application | ./kmeans/kmeans-gcc-O3-funroll | same as r0 | same as r0 | same as r0 | same as r0 |
| Timestamp | 2025-06-25 16:43:02 | 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 |
| Machine | otterfall | same as r0 | same as r0 | same as r0 | same as r0 |
| Architecture | x86_64 | same as r0 | same as r0 | same as r0 | same as r0 |
| Micro Architecture | SKYLAKE | same as r0 | same as r0 | same as r0 | same as r0 |
| Model Name | Intel(R) Xeon(R) Silver 4210R CPU @ 2.40GHz | same as r0 | same as r0 | same as r0 | same as r0 |
| Cache Size | 14080 KB | same as r0 | same as r0 | same as r0 | same as r0 |
| Number of Cores | 10 | same as r0 | same as r0 | same as r0 | same as r0 |
| Maximal Frequency | 3.2 GHz | same as r0 | same as r0 | same as r0 | same as r0 |
| OS Version | Linux 6.12.1-arch1-1 #1 SMP PREEMPT_DYNAMIC Fri, 22 Nov 2024 16:04:27 +0000 | same as r0 | same as r0 | same as r0 | same as r0 |
| Architecture used during static analysis | x86_64 | same as r0 | same as r0 | same as r0 | same as r0 |
| Micro Architecture used during static analysis | SKYLAKE | same as r0 | same as r0 | same as r0 | same as r0 |
| Compilation Options |
kmeans-gcc-O3-funroll: GNU C++14 15.1.1 20250425 -march=cascadelake -mmmx -mpopcnt -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mavx2 -mno-sse4a -mno-fma4 -mno-xop -mfma -mavx512f -mbmi -mbmi2 -maes -mpclmul -mavx512vl -mavx512bw -mavx512dq -mavx512cd -mno-avx512vbmi -mno-avx512ifma -mno-avx512vpopcntdq -mno-avx512vbmi2 -mno-gfni -mno-vpclmulqdq -mavx512vnni -mno-avx512bitalg -mno-avx512bf16 -mno-avx512vp2intersect -mno-3dnow -madx -mabm -mno-cldemote -mclflushopt -mclwb -mno-clzero -mcx16 -mno-enqcmd -mf16c -mfsgsbase -mfxsr -mno-hle -msahf -mno-lwp -mlzcnt -mmovbe -mno-movdir64b -mno-movdiri -mno-mwaitx -mno-pconfig -mpku -mprfchw -mno-ptwrite -mno-rdpid -mrdrnd -mrdseed -mno-rtm -mno-serialize -mno-sgx -mno-sha -mno-shstk -mno-tbm -mno-tsxldtrk -mno-vaes -mno-waitpkg -mno-wbnoinvd -mxsave -mxsavec -mxsaveopt -mxsaves -mno-amx-tile -mno-amx-int8 -mno-amx-bf16 -mno-uintr -mno-hreset -mno-kl -mno-widekl -mno-avxvnni -mno-avx512fp16 -mno-avxifma -mno-avxvnniint8 -mno-avxneconvert -mno-cmpccxadd -mno-amx-fp16 -mno-prefetchi -mno-raoint -mno-amx-complex -mno-avxvnniint16 -mno-sm3 -mno-sha512 -mno-sm4 -mno-apxf -mno-usermsr -mno-avx10.2 -mno-amx-avx512 -mno-amx-tf32 -mno-amx-transpose -mno-amx-fp8 -mno-movrs -mno-amx-movrs --param=l1-cache-size=32 --param=l1-cache-line-size=64 --param=l2-cache-size=14080 -mtune=cascadelake -g -O3 -std=c++14 -fopenmp -funroll-loops | 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 |
| Number of threads observed | 1 | 2 | 4 | 8 | 10 |
| Frequency Driver | intel_pstate | same as r0 | same as r0 | same as r0 | same as r0 |
| Frequency Governor | performance | same as r0 | same as r0 | same as r0 | same as r0 |
| Huge Pages | always | 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 |
| Number of sockets | 1 | same as r0 | same as r0 | same as r0 | same as r0 |
| Number of cores per socket | 10 | 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 |
| MAQAO build | 1cd8232d3b2009bc695f526f903b266bda9bb996::20250623-181852 | same as r0 | same as r0 | same as r0 | same as r0 |
| Comments | Intel Xeon 42104R (Cascade Lake CPU), 1-10 threads runs | same as r0 | same as r0 | same as r0 | same as r0 |