Hi,
I'd like to use VTune to profile a process running inside a docker container. This doesn't work in either the GUI or the command line. Running the command line version of the collector, VTune seems to report an internal assertion:
$ amplxe-cl -collect hotspots -target-pid $(pgrep writebench)
amplxe: Collection started. To stop the collection, either press CTRL-C or enter from another console window: amplxe-cl -r [redacted] -command stop.
amplxe: Error: [Instrumentation Engine]: Source/pin/base_l/sysfuncs_linux.cpp: GetProcessName: 208: assertion failed: p
amplxe: Collection failed.
amplxe: Internal Error
I'm able to successfully analyze the same process when it's running outside of Docker. I'm using VTune 2016 Update 4:
$ cat support.txt
Package ID: N/A
Package Contents: Intel(R) VTune(TM) Amplifier XE 2016 Update 4
Build Number: 470476
The issue is easily reproducible using the standard redis docker container:
$ docker run redis /usr/local/bin/redis-server
In another shell (running as root)
# amplxe-cl -collect hotspots -target-pid $(pgrep redis-server)
amplxe: Collection started. To stop the collection, either press CTRL-C or enter from another console window: amplxe-cl -r [redacted] -command stop.
amplxe: Error: [Instrumentation Engine]: Source/pin/base_l/sysfuncs_linux.cpp: GetProcessName: 208: assertion failed: p
amplxe: Collection failed.
amplxe: Internal Error
Can you please help?