pgi605: pgprof never gets started

When trying to run pgprof on a real application (an inhouse CFD code), the profiling GUI never appears. Specifying text mode with -s or -text likewise does never return a prompt.

The only thing going on is that a java process starts up and seems to run forever:

$ ps
PID TTY TIME CMD
17590 pts/6 00:00:00 bash
17704 pts/6 00:00:00 pgprof
17741 pts/6 00:46:07 java
19174 pts/6 00:00:00 ps

Weird, the user application ran for less than 10 minutes on 4 cpus. Both -Mprof=mpi and -Mprof=time behaves like this. The -Mprof=time datafile is 19k and the application executable is 981k.

Hi,

Please accept my apology for the delayed response. When you say nothing happens, are you saying that you never see the opening PGPROF splash screen? Or do you see the splash screen and nothing else happens? Or do you see the splash screen followed by a dialog that says “Please Wait. Loading Symbol Information”. If the latter, then it’s possible that you have a lot of symbols to read (this is possible since the program is 981K). Are you also compiling with -g? If so, try dropping -g since that generates a lot of unnecessary symbol information for the sake of profiling. Does the profile work with less than 4 CPUS?

Regards,

Mark

I try to use pgprof in text mode, and that does not work, neither does graphical mode.

I compile with a mix of

#  1 : modules w/ compiler optimization problems
#  2 : default optimization level
#  3 : aggresive optimization, use on largest cpu time contributors only
OPT1     = -O1
OPT2     = -O2
OPT3     = -O3 -fastsse
###
COMFLAGS = -r8 -tp=amd64 -Minfo=all -Mprof=func

That is, no debugging (-g). Also, the executable is 1093K and is executed on 2 processors with mpirun for an elapsed time of 224 seconds, generating a file pgprof.out of size 4623 bytes.

I then invoke pgprof in command mode with

 $ pgprof -text -exe <executable> -I <srcdir> pgprof.out

Now, except for writing the usual text about my evaluation license, nothing happens. It fires up a java subprocess which runs continously:

UID        PID  PPID  C STIME TTY          TIME CMD             
joern    12686 12684  0 08:00 pts/1    00:00:00 -bash
joern    12714 12686  0 08:00 pts/1    00:00:00 /bin/sh /usr/pgi/linux86-64/6.0/
joern    12742 12714 99 08:00 pts/1    03:58:49 /usr/pgi/linux86-64/6.0/bin/../java

I have just ordered permament floating licenses, so in case you are interested in trying this yourself I can easily create an account for you on the target machine. It is not yet in production. I can also send you a tarball with source, job scripts and makefiles.

Hi,

You are profiling an MPI program, correct? If so, then you should use -Mprof=mpi,func for your profiling option. You can also try -Mprof=mpi,time. Let us know if that fixes your problem. Otherwise, email us your pgprof.out files (one per node) generated with -Mprof=mpi,func to try here. Send it to trs@pgroup.com. Mention this message thread and that you are sending it as per Mark’s request. It will then get properly forwarded to me for diagnosis.

Thanks,

Mark