Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4999 Discussions

Using VTune/Amplifier 11 under Slurm

bathmatt
Beginner
868 Views
Hi
Is there anyway to use vtune under the slurm queuing system? I cross posted w/ the HPC thread as well.

Thanks
Matt
0 Kudos
5 Replies
Peter_W_Intel
Employee
868 Views
Hi Matt,

I'm not familiar with Slurm queuing system... Iguess that isa utility for resource management for cluster system.

VTune Amplifier XE can only collect perfomancedata on one node of cluster system, the user may install the product again on other nodes.

If you run VTune with MPI job in a chip, please refer to this article.

Another article for your reference, to install the product on the cluster system.

Regards, Peter
0 Kudos
bathmatt
Beginner
868 Views
I read that article. It was informative, now I know why it isn't working. Basically it say

Usercan also viewresults viaGUI by using command "amplxe-gui".You will findonly process "python" was displayed, for example:

Root-cause:


mpiexec doesn't run MPI program directly, it run connection to MPI's mpd daemon via socket and pass all parameters, so the program is not child process of mpiexec.


So, I now don't know what to do.

I tried

srun -n 1 amplxe-cl -V

and that works

Then I tried

srun -n 1 amplxe-cl -collect hotspots -r r0002hs -- mycode

and mycode doesn't run. The reason I think is that parameters are not getting passed to my code which srun creates.

Any other ideas?
0 Kudos
bathmatt
Beginner
868 Views
I tried the following in my code.

int pid = getpid();

sprintf(cmd,"amplxe -collect hotspot -target-pid %d", pid)
system(cmd);

and I get an error, this analysis doesn't support system wide profiling or attaching to a process.

but the examples in the doc's on intels site suggests that it does.

from

http://software.intel.com/sites/products/documentation/hpc/amplifierxe/en-us/lin/ug_docs/olh/cli_ref/target-pid.html#target-pid

$ amplxe-cl -collect hotspots -target-pid 1234

I am using version 11 Update 1

Thanks
0 Kudos
bathmatt
Beginner
868 Views
Final comment for a while. It looks like one can use lightweight-hotspots collection, however, this requires the kernel modules to be installed which, of course, they are not. I am guessing all the target-pid collectors require this module. I have put in a help ticket on our big iron system, however, they tend not to address these sorts of issues.

Matt
0 Kudos
Mark_D_Intel
Employee
868 Views
The attach-to-process (-target-pid) functionality on Linux was added in Update 3. Also, the command to perform the attach doesn't return until the target process finishes - you would need to use fork/exec rather than 'system' to perform a self-attach.

When running the original command you listed ('srun -n 1 amplxe-cl -collect hotspots -r r002hs myapp') - did it produce the result directory? If so, look in the data.0 subdirectory for error messages. If present, that may give some indication why your application is failing to run.

Note that the issue may not be just running under Slurm, but some issue with any of the technologies involved. (Slurm -> MPI -> Linux node )

Mark
0 Kudos
Reply