PGI 18.10 integration with Visual Studio 2017

Dear all,
I would like to integrate PGI 18.10 with Visual Studio 2017 to compile Fortran programs. Visual Studio 2017 was properly installed prior to installing PGI. But I do not see any “PGI Solution” kind of setting in Visual Studio.

Thanks in advance.

Hi limtaejun,

PVF is being deprecated in the future, and we are no longer issuing licenses for it. But if you have an existing PVF license you can continue to use it. PVF only supports VS 2015; there is no support for using it with VS 2017.

If you have an existing installation of PVF, e.g. 18.7, and VS 2015, then you only need to install the PVF 18.10 package. If you are installing PVF from scratch, you will need to 1) have VS 2015 installed as a pre-requisite and 2) install 18.7 PVF before running the 18.10 PVF installer to “upgrade” the compilers 18.10. This way, you’ll be able to use 18.10 PVF with VS 2015.

Thanks for your kind answer. The problem is that the for-fee PVF version of mine is 14.6, which I believe is installed with VS 2013.

I’ve recently upgraded my GPU to Geforce RTX 2080TI. But I was clueless about the new GPU as an accelerator not being compatible with PVF 14.6.

What option do I have to use the PGI compiler that’s compatible with RTX 2080TI with Visual Studio?

What option do I have to use the PGI compiler that’s compatible with RTX 2080TI with Visual Studio?

We only officially support NVIDIA Tesla products though when the GeForce products use the same core architecture, it’s usually not a problem. However here, the RTX 2080Ti uses an architecture (Turning) not yet available in the Tesla line, so even with our latest compilers, we don’t support it yet.

One thing you can try is to add the flag “-ta=tesla:nordc” or “-Mcuda=nordc” to your compilation and link. RDC stands for “Relocatable Device Code” and allows to link device code to a whole program binary. Without RDC, the compiler instead creates device code in each individual object file. The side effect is that the PTX code is retained which newer cards can then recompile (via JIT). You don’t get the performance advantage and there are some limitations on what you can do in the device code (i.e. not calling device subroutines or accessing device data found in external modules), but might allow you to run on this card.

The other issue here is that the RTX 2080 Ti requires CUDA 10.0, while PGI 14.6 uses CUDA 5.5 by default which was the current version back in 2014. CUDA 10.0 does support running applications built with older CUDA Toolkits, but I’m not positive it goes back as far as CUDA 5.5. Though, worth a try.

Per: https://docs.nvidia.com/cuda/turing-compatibility-guide/index.html

You might also need to set the environment variable “CUDA_FORCE_PTX_JIT=1” to force the CUDA 10.0 driver to recompile the PTX.

Hope this helps,
Mat