Is there any particular reason why the compiler documentation is incomplete/inconsistent?
Inconsistent: Release notes, CUDA FORTRAN Programming Guide and Reference and
pgf90 -help -flag
have some conflicting information. Which is the best to use/most up-to-date?
Incomplete: I can’t seem to find any documentation about the use of
yet it seems to work. Is it not documented because it shouldn’t be used yet?
Out-of-date: I don’t think the PGI Accelerator Compilers with OpenACC Getting Started Guide has been updated since PGI 13.2?
It looks like an oversight. They got in for the OpenACC side but looks to have missed documenting it for CUDA Fortran. I added an issue and sent it on to our documentation folks. Note that -Mcuda=llvm is implied when “-g” is used, since LLVM is required for debugging on the device.
I’ll ask about the getting started guide as well. This document doesn’t get updated with every release but it’s probably time for a refresh.
Thanks for the “-g”“-Mcuda=llvm” tip. An update to the Getting Started Guide would be great.
I was just browsing the PGI 14.1 directory structure and it looks like the documentation there (/opt/pgi/linux86-64/2014/doc/) is different to (and more up-to-date than) that on the website. The Getting Started Guide has a 2014 version in the doc directory. It would still be really nice if the man pages, “pgf90 -help -flag” and the pdf documentation was consistent.
The pgf90, pgcc, etc. man pages have a mistake in them for the -Mpfo flag. It says that dir=directory should be used to specify the directory containing the pgfi.out profile feedback information file, but it should be dir:directory (colon and not equals).
pgf90 -Mpfo -help
shows it as it should be (with a colon) dir:. pgi14ref.pdf doesn’t indicate that the directory can be specified at all.
Typically “:” and “=” are interchangeable. Not sure why “-Mpfo=dir=” isn’t working. But I’ll pass along your note about the help and man page being inconsistent.
Documentation in man pages and help switches has been updated to define llvm.