Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Beginner
73 Views

How to get Wait Time and Wait Count from OpenMP applications?

Jump to solution

Hi,

I'm trying to get wait time and wait count data from some openmp applications, but it return always zero when using locksandwaits or N/A using the concurrency option.

The compiler I'm using is gcc with this command line:

gcc app.c -o app -fopenmp -lm -g

And this line to run:

amplxe-cl -collect locksandwaits -app-working-dir /my_dir -- ./app NumThreads

I also did:

export KMP_FORKJOIN_FRAMES=1

There's this warning: amplxe:

Warning: Cannot locate debugging symbols for file `/opt/intel/vtune_amplifier_xe_2016.3.0.463186/lib64/libtpsstool.so'.

 

The output I get is like:

Summary
-------
Average Concurrency:  3.983
Elapsed Time:               3.177
CPU Time:                    12.620
Wait Time:                  
Average CPU Usage:    3.835

 

It works with pthreads, mpi-1 and mpi-2 applications, but doesn't with openmp.

So, anyone knows the way to solve this problem with openmp or another way to do it?

 

Thanks!

0 Kudos

Accepted Solutions
Highlighted
73 Views

Hello Adriano,

Meanwhile I'm looking at this, do you have ability to use intel compiler to compile your OpenMP application? If so - it is recommended to use "-c hpc-performance" to get metrics on OpenMP usage efficiency including serial time, imbalance, locks etc.

Thanks & Regards, Dmitry

View solution in original post

0 Kudos
1 Reply
Highlighted
74 Views

Hello Adriano,

Meanwhile I'm looking at this, do you have ability to use intel compiler to compile your OpenMP application? If so - it is recommended to use "-c hpc-performance" to get metrics on OpenMP usage efficiency including serial time, imbalance, locks etc.

Thanks & Regards, Dmitry

View solution in original post

0 Kudos