Search code examples
mpiintelintel-vtuneintel-oneapi

Vtune throws aps error while running MPI samples


I am trying to profile my MPI application using Intel Vtune. While trying to run the below two commands, I am getting error.

  1. I_MPI_DEBUG=5. I tried two things,
  1. export I_MPI_DEBUG = 5 mpirun -np 4 aps ~/binary/vasp_std_2022
  2. mpirun -genv I_MPI_DEBUG=5 -np 4 aps ~/binary/vasp_std_2022

vtune: Warning: Memory bandwidth collection is not supported inside a virtual machine since uncore events cannot be collected. For full functionality, consider using a bare-metal environment. vtune: Warning: CPU frequency data collection is not supported on this platform. vtune: Error: amplxe-perf: Using CPUID GenuineIntel-6-6A-6 both cgroup and no-aggregation modes only available in system-wide mode Usage: perf stat [] [] -G, --cgroup monitor event in cgroup name only -A, --no-aggr disable CPU count aggregation -a, --all-cpus system-wide collection from all CPUs --for-each-cgroup expand events for each cgroup vtune: Error: Preliminary validation of the requested events failed. aps Error: Cannot run the collection. aps Error: Cannot process configs directory. aps Error: Cannot process configs directory. aps Error: Cannot process configs directory.


Solution

  • In the command you are using 'aps' while profiling.

    If you are using aps command you need to use some parameters like collection-mode as --collection-mode=<mode> This parameter is used to specify a comma separated list of data to collect. Possible values:

    • hwc : hardware counters
    • omp : openMP statistics
    • mpi : MPI statistcs
    • all : all possible data(default)

    Try to use the command as below

    mpirun -genv I_MPI_DEBUG= 5 -np 4 aps --collect-mode=omp ./obj
    

    enter image description here