Which make me think that this warning messages are important and I'm doing something wrong.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello, I'm new to VTune Amplifier and I'm trying to profile OpenCV with a very basic application. Following this guide on recommended compiler options, I compiled OpenCV via CMake with CMAKE_BUILD_TYPE=RelWithDebInfo and -DWITH_OPENMP=ON so both -O2 and -g options are included and OpenMP enabled. My testing OpenCV application is compiled with
g++ -I/home/luca/Dropbox/SURFSPM/opencvInstall/include -O3 -g -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.o" -o "main.o" "../main.cpp"
via eclipse.
However, when I try to analyze my application this is the collection Log:
Data collection is completed successfully
Sunday, February 05, 2017 AM11:44:53 CET The result file '/home/luca/intel/amplxe/projects/OpenCV/r000hs/r000hs.amplxe' is successfully created and added to the project OpenCV.
Finalization completed with warnings
Sunday, February 05, 2017 AM11:45:01 CET Result finalization has completed with warnings that may affect the representation of the analysis data. Please see details below.
Cannot locate file `[stack]'.
Cannot locate debugging symbols for file `/lib/x86_64-linux-gnu/libgcc_s.so.1'.
Cannot match the module with the symbol file `/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21': checksum is different. Make sure to specify the correct path to the symbol file in the Binary/Symbol Search list of directories.
Cannot locate debugging symbols for file `/usr/lib/x86_64-linux-gnu/libstdc++.so.6'.
Cannot locate debugging symbols for file `/opt/intel/vtune_amplifier_xe_2017.1.0.486011/lib64/runtime/libittnotify_collector.so'.
Cannot locate debugging symbols for file `/lib64/ld-linux-x86-64.so.2'.
Cannot locate debugging symbols for file `/usr/lib/x86_64-linux-gnu/libpng12.so.0'.
Cannot locate debugging symbols for file `/usr/local/lib/libopencv_xfeatures2d.so.3.1'.
Cannot locate debugging symbols for file `/opt/intel/vtune_amplifier_xe_2017.1.0.486011/lib64/libtpsstool.so'.
Cannot locate debugging symbols for file `/usr/local/lib/libopencv_core.so.3.1'.
Cannot locate debugging symbols for file `/usr/local/lib/libopencv_imgcodecs.so.3.1'.
Cannot locate debugging symbols for file `/usr/local/lib/libopencv_imgproc.so.3.1'.
In addition, as you can see from the following image, most of the time the CPU usage is in idle:
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi luca,
Please note that "CPU Usage" histogram treats all the "Spin and Overhead time" as Idle. I recommend you to switch to Bottom-up to see the hotspots and analyze why these functions aren't using CPU efficiently. You can also ignore these warning messages on finalization, presence of debug info for system libraries may improve the quality of call stacks and get better names for the functions from system libraries.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The indication that you have switched .so at run time seems a bad sign. For such a short run you would reduce sampling interval from default.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Vitaly Slobodskoy (Intel) wrote:
Hi luca,
Please note that "CPU Usage" histogram treats all the "Spin and Overhead time" as Idle. I recommend you to switch to Bottom-up to see the hotspots and analyze why these functions aren't using CPU efficiently. You can also ignore these warning messages on finalization, presence of debug info for system libraries may improve the quality of call stacks and get better names for the functions from system libraries.
What do you mean by "Spin and Overhead time"? Btw I built the called library with CMAKE RelWithDebInfo (which uses -d and -O2 without -O0 which is discouraged), I'll see if it improves things.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Tim P. wrote:
The indication that you have switched .so at run time seems a bad sign. For such a short run you would reduce sampling interval from default.
Why calling an external library should be a bad sign? Anyway, the default sampling interval is 10ms if I'm not wrong, isn't it enough? Anyway, I'll try even smaller values.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page