What is exit code 2 in PVF during compilation?


I’m using PVF 15.10 and I have a source file that does not compile in debug mode.

But the compiler does not give any error message.

I can only see that the exit code is 2 from build log.

What is exit code 2?


Error code 2 means that the compiler couldn’t find the specified file. Most likely, it can’t find a module file.

If PVF can’t find a module, it will continue trying to build the rest of the project and then come back to this file assuming the dependent module has been built. As it does this, it creates a dependency log. It then uses the dependency log to order the files for subsequent builds.

If you’re build had worked at one time, it could be that you added a new module dependency but the dependency log needs to be rebuilt. In this case, clean you project and rebuild.

Also, after a few times of not building, PVF may give-up. You’ll want to look at any earlier failures to see if a file is not getting built.


Strangely, after PC reboot, I’m getting error message.

오류 1 Internal compiler error. Invalid MDRef kind 6 C:\Users\USER\Dropbox\nTRACER\src\CUDAAxial.cuf 700

It’s another internal compiler error.

Only debug mode compilation occasionally gives internal compiler error, while in release mode I had never seen it occuring.

And I’m not sure if this is the real cause, but changing, in a kernel

REAL, DEVICE, INTENT(IN) :: Cell_phis(ng * nxy * nz)
REAL, DEVICE, INTENT(IN) :: Top_phis(ng * nxy)
REAL, DEVICE, INTENT(IN) :: Bottom_phis(ng * nxy)

to the assumed shape array format

REAL, DEVICE, INTENT(IN) :: Cell_phis(:)
REAL, DEVICE, INTENT(IN) :: Top_phis(:)
REAL, DEVICE, INTENT(IN) :: Bottom_phis(:)

fixed the problem.


Can you send a reproducing example to PGI Customer Service (trs@pgroup.com). While we may have fixed this since 15.10, I don’t see any reports with that ICE so would like to have our compiler engineers investigate the issue.