I have used the Vtune API to name my threads so that when I look at any analysis data, I can see my named threads. This works perfectly well when vtune launches my application either through the GUI, or from command-line and then viewed later in the GUI.
However, when I use the feature in vtune to attach to a running process with my software (I need to use this method as the execution that I want to analyze is getting piped data from another system process), the thread names don't show up. Is it expected to work? If so. should I be doing something special to see the thread names?
Details of my installation
Platform: Linux centos 6.6 644-bit
VTune version: 2016 build 424694.
Thanks in advance for your prompt help!
I had an old example (Sorry that it is a Chinese version) and it should be workable for current VTune Amplifier XE 2016, I guess.
When you use attaching process mode, are you sure if statement of "__itt_thread_set_name()" already executed before VTune attached this process? You may insert Sleep 10s before executing ITT API, what I mean is 1) manually launch app. 2) use VTune to attach process within 10s, ensure that ITT API still doesn't execute - so VTune can records this.
it should work if you set an environment variable INTEL_LIBITTNOTIFY[32|64]=<path_to_libittnotify.so> in your application environment as said in the documentation https://software.intel.com/en-us/node/544198