-ipo and -prof_use

-ipo and -prof_use


Does anyone have experience with the -ipo and -prof_use optimizations? Specifially, I'm trying to get some idea of how much these options might speed up a code (although I realize this is likely to be highly code-specific). I've tried using them on a large code that I make extensive use of and find that they lead to at best a small slow-down in the code.


2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Yes, the benefit of these optimizations depends on the code, the compiler, and the architecture.

With the Intel compilers, -prof_gen/use is likely to be beneficial when a conditional branch usually goes one way, the compiler chooses to optimize for a different branch, and a significant part of the run time is tied up in resolving the difference. Evidently, there are many other situations where PGO might help, but they may not be so common.

Traditional Fortran programs are often written so as not to depend on IPO. A typical situation where performance might depend strongly on IPO would be where a subroutine is called inside the innermost loop, and in-lining is needed to permit optimizations such as software pipelining or vectorization.

You could say that these optimizations have the best chance of gaining on programs which were written in disregard of the usual performance rules.

Leave a Comment

Please sign in to add a comment. Not a member? Join today