options

gmx_mpi - 2023-07-28 12:01:12 - MAQAO 2.17.7

Help is available by moving the cursor above any symbol or by checking MAQAO website.

Global Metrics

Total Time (s)284.20
Profiled Time (s)282.15
Time in analyzed loops (%)85.0
Time in analyzed innermost loops (%)68.1
Time in user code (%)87.7
Compilation Options Score (%)75.0
Perfect Flow Complexity1.02
Array Access Efficiency (%)55.1
GFLOPS32.712
Perfect OpenMP + MPI + Pthread1.00
Perfect OpenMP + MPI + Pthread + Perfect Load Distribution1.00
No Scalar IntegerPotential Speedup1.08
Nb Loops to get 80%12
FP VectorisedPotential Speedup1.08
Nb Loops to get 80%8
Fully VectorisedPotential Speedup1.24
Nb Loops to get 80%26
FP Arithmetic OnlyPotential Speedup1.27
Nb Loops to get 80%26

CQA Potential Speedups Summary

Loop Based Profile

Innermost Loop Based Profile

Application Categorization

Compilation Options

Source ObjectIssue
libgromacs_mpi.so.7
pairlist_simd_2xmm.h-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
threaded_force_buffer.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pme_gather.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
listed_forces.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
partition.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
manage_threading.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
kernel_prune.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pairs.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pairlist.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
update.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
md_support.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
redistribute.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
mdatoms.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
lincs.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pbc.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
atomdata.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
localtopology.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
vector.tcc-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pme_solve.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pme_spread.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
calc_verletbuf.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
vec.h-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
computemultibodycutoffs.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
bonded.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
settle.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
sim_util.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
grid.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
mshift.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
arrayref.h-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
domdec_constraints.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
kernel_ElecEw_VdwLJCombLB_VF.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
kernel_outer.h-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.
pme_grid.cpp-march=x86-64 is used but it should be replaced by a more architecture specific option or -march=native.

Loop Path Count Profile

Cumulated Speedup If No Scalar Integer

Cumulated Speedup If FP Vectorized

Cumulated Speedup If Fully Vectorized

Cumulated Speedup If FP Arithmetic Only

Experiment Summary

Application/home/eoseret/GROMACS/install/gplusplus/bin/gmx_mpi
Timestamp2023-07-28 12:01:12 Universal Timestamp1690538472
Number of processes observed1 Number of threads observed1
Experiment TypeMPI; OpenMP;
Machineskylake
Model NameIntel(R) Xeon(R) Platinum 8170 CPU @ 2.10GHz
Architecturex86_64 Micro ArchitectureSKYLAKE
Cache Size36608 KB Number of Cores26
OS VersionLinux 6.4.1-arch2-1 #1 SMP PREEMPT_DYNAMIC Tue, 04 Jul 2023 08:39:40 +0000
Architecture used during static analysisx86_64 Micro Architecture used during static analysisSKYLAKE
Frequency Driverintel_cpufreq Frequency Governorschedutil
Huge Pagesalways Hyperthreadingoff
Number of sockets2 Number of cores per socket26
Compilation Options
libgromacs_mpi.so.7: GNU C++17 13.1.1 20230429 -mavx512f -mfma -mavx512vl -mavx512dq -mavx512bw -mtune=generic -march=x86-64 -g -O2 -std=c++17 -fno-omit-frame-pointer -fcf-protection=none -fPIC -fexcess-precision=fast -funroll-all-loops -fopenmp
CommentsGROMACS 2022.4 compiled with g++ 13.1.1 running on Skylake with 1 OMP thread, 2000 steps

Configuration Summary

Dataset/home/eoseret/GROMACS/DATA/GROMACS_TestCaseA
Run Command<executable> mdrun -s ion_channel.tpr -nsteps 2000 -pin on -deffnm g++
MPI Commandmpirun -n <number_processes>
Number Processes1
Number Nodes1
Number Processes per Nodes1
FilterNot Used
Profile StartNot Used
Maximal Path Number4
×