Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
14 Views

[PGO] no .dyn files

Hello,

The INTEL_PROF_DYN_PREFIX variable is set to /tmp, but no .dyn file appear in the directory. The flags I use are:

-prof-gen=threadsafe -mtune=haswell -extend-source -static -echo

and my program exits with the stop command, which shouldn't be considered an error. Did I miss something?

0 Kudos
10 Replies
Highlighted
Black Belt
14 Views

My guess is that the STOP

My guess is that the STOP bypasses the normal image exit code. Try removing the STOP and see what it does.

 

Steve (aka "Doctor Fortran") - https://stevelionel.com/drfortran
0 Kudos
Highlighted
14 Views

The sacct command returns

The sacct command returns ExitCode 0:0 for both jobs, with and without commenting the stop instruction. The instruction immediately following stop is end.

When the INTEL_PROF_DYN_PREFIX variable is not defined, there is no .dyn file neither in the run directory. The run directory is not the same as the compilation directory, it's not allowed by the administrator

0 Kudos
Highlighted
Black Belt
14 Views

It's been a long time since I

It's been a long time since I've played with PGO. I'll leave this to others with more experience. You might want to try some simple examples all in the same directory, and then incrementally make environment changes to closer to your real one to see what changes.

Steve (aka "Doctor Fortran") - https://stevelionel.com/drfortran
0 Kudos
Highlighted
Moderator
14 Views

According to the Developer

According to the Developer Guide

NOTE The value specified in this environment variable must not contain < > : " / \ | ? * characters. The default naming scheme is used if an invalid prefix is specified.

Maybe the prof-dir compiler option will help. Details at the above link.

 

0 Kudos
Highlighted
14 Views

Quote:Barbara P (Intel) wrote

Barbara P (Intel) wrote:

NOTE The value specified in this environment variable must not contain < > : " / \ | ? * characters. The default naming scheme is used if an invalid prefix is specified.

So the .dyn file should be in the directory of execution?

0 Kudos
Highlighted
14 Views

Quote:Steve Lionel (Ret.)

Steve Lionel (Ret.) (Blackbelt) wrote:

You might want to try some simple examples all in the same directory, and then incrementally make environment changes to closer to your real one to see what changes.

With a simple hello.f, there is a .dyn file. Thank you

0 Kudos
Highlighted
14 Views

Quote:bucaioni, thomas wrote:

bucaioni, thomas wrote:

The run directory is not the same as the compilation directory, it's not allowed by the administrator

So, the compile and run directories must be the same... Many thanks

The execution time has improved only 2" compared to the -Ofast option. The first compilation doesn't need the flag -Ofast, only the second one. Am I right?
Maybe it takes to remove the .o files before the second compilation?

0 Kudos
Highlighted
Moderator
14 Views

I'm sorry that I wasn't

I'm sorry that I wasn't clearer.   The environment variable INTEL_PROF_DYN_PREFIX must not contain < > : " / \ | ? * characters.  /tmp is not valid.

The compiler option -prof-dir  (-Qprof-dir on WIndows) specifies a directory for profiling information output files (*.dyn and *.dpi). The specified directory must already exist.

 

0 Kudos
Highlighted
14 Views

Quote:Barbara P (Intel) wrote

Barbara P (Intel) wrote:

The compiler option -prof-dir  (-Qprof-dir on WIndows) specifies a directory for profiling information output files (*.dyn and *.dpi). The specified directory must already exist.

It worked, thank you very much for your help

0 Kudos
Highlighted
Moderator
14 Views

That's good news!  You're

That's good news!  You're welcome!

0 Kudos