I'm experimenting with Vtune Amplifier XE 2013 trial edition on Linux and I have a basic question that I can't seem to find the answer to anywhere.
My application must run as an appropriate non-root user. I installed the eval version as root (it was recommended) and now it seems that I can only run the GUI or the command-line tool as root - I can't even access the install dir as a non-root user. The problem now though is that I cannot find a way to successfully attach to my application's process - when I try to start an analysis that way I get this (in the GUI as well as CL):
# /opt/intel/vtune_amplifier_xe_2013/bin64/amplxe-cl -collect hotspots --target-pid 22103
amplxe: Collection started. To stop the collection, either press CTRL-C or enter from another console window: amplxe-cl -r /opt/intel/vtune_amplifier_xe_2013/bin64/r001hs -command stop.
amplxe: Error: Data collection is interrupted because credentials of the target process and VTune Amplifier do not match. Please start both target process and VTune Amplifier with the credentials of the same user and try collecting data again.
amplxe: Internal Error
I also get this if I do "sudo <command above>".
How do I get this to work?
BTW, I can do system-wide profiling, but I'm limited in the types of analysis I can do - in particular I cannot collect stacks when doing system wide profiling which is very important to me.
The install doesn't sound right. When you install as root, anyone should be able to use the software. What OS are you on? Did you install to the default location? Did you accept all the defaults during installation?
Hi - I just uninstalled and then installed again, this time paying closer attention to what I was doing. All the defaults seem to suggest any user should be able to run as you suggest. I accepted all defaults again.
The install completed successfully. As a non-root user I tried:
$ less /opt/intel/vtune_amplifier_xe/amplxe-vars.sh
bash: /opt/intel/vtune_amplifier_xe/amplxe-vars.sh: Permission denied
$ ls -l /opt/intel/vtune_amplifier_xe/bin64/amplxe-gui
ls: cannot access /opt/intel/vtune_amplifier_xe/bin64/amplxe-gui: Permission denied
$ ls -ld /opt/intel
drwx------ 5 root root 4096 May 9 14:17 /opt/intel
Should I just manually update permissions to allow any user to run and try again? Maybe its an install defect?
Update - I made /opt/intel mode 755 which allowed me to successfully source amplxe-vars.sh as non-root and then run amplxe-gui, however now it just hangs forever at the splash screen.
You don't explain whether you can use the mechanism provided by VTune providing for non-root users to gain privilege to run by making them members of a configured group (typically named vtune).
I have not done anything to change or set groups. I was hoping that vtune would be usable "out of the box" right after install completed successfully. There was nothing to indicate that I need to perform post-install steps.
I'm not against doing that if it will work - I just would like to see the documentation that tells me exactly what I need to do. I looked at the docs but didn't see anything about this (admittedly I didn't scour the docs in great detail).
The group management is no longer necessary in the latest release. And, neither is it an install defect, but, rather, it looks as though your system has a non-typical configuration. What are the permissions on /opt? I bet it is root-only. This is not right. All users should have read-execute privileges. You can manually change the permissions, or uninstall, change the permissions on /opt and reinstall.
Thanks for the quick replies!
My permissions on /opt are:
[root@blast1 /]# ls -ld opt
drwxr-xr-x. 9 root root 4096 May 9 14:08 opt
I have not changed them for /opt. I did update /opt/intel to be 755. Then I get the splash screen hang problem I mentioned above. If I kill it, then launch amplxe-gui as root, it works perfectly (except I can't do the things I need to do as I stated in my first post).
I didn't think I had to muck with any of the other dirs as I saw this:
# ls -l /opt/intel
drwx------ 6 root root 4096 May 9 14:17 ism
drwx------ 2 root root 4096 May 9 14:08 licenses
lrwxrwxrwx 1 root root 34 May 9 14:15 vtune_amplifier_xe -> /opt/intel/vtune_amplifier_xe_2013
drwxr-xr-x 20 root root 4096 May 9 14:16 vtune_amplifier_xe_2013
But maybe the ism and licenses dirs need to be 755 as well. I'll try that.
I'm running on RHEL 6.2.
Aha! Doing "chmod 755 ism licenses" in /opt/intel resulted in the GUI popping up perfectly as non-root! Actually, to be sure, I did "chmod -R go+rx /opt/intel".
Yes I'm using Update 16.
Now on to the next problem. :) I successfully setup an analysis to attach to a pid. I do that and then click on Start. Then in another window I run a query (I'm profiling DB2). The query finishes then I go back to the GUI and click on Stop. I then get an error tab saying "Cannot display data - The data cannot be displayed: there is no viewpoint applicable for the data.".
Any idea? I'm able to successfully profile DB2 when running as root, but again that's just systemwide - I really want callstacks.
Ahh I just caught this in the "Collector Messages" window:
Error: Application sets its own handler for signal 38 that is used for internal needs of the tool. Collection cannot continue. Refer to the Issues and Limitations section of the Release Notes for possible workarounds.
I'll go dig up the release notes and see what I can find.