Integrating CUDA with Visual Studio 2017
Recently, I was tasked to speed up an algorithm using the CUDA framework. And I ran into issues getting the CUDA project to compile in the VS2017. After spending all the time searching all over the internet for the solutions/guides, I have decided to put up a guide myself so that someone else will benefit from it. Let's get started!
CUDA Library Setup
Copy the files
from C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1\extras\visual_studio_integration\MSBuildExtensions
to C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\v140\BuildCustomizations
Visual Studio 2017 Setup
After you have installed visual studio 2017, you will realize that a new CUDA project is not able to compile. That is because there are still some missing dependencies. At the point of writing this article, the latest CUDA versions 9.0/9.1 are not compatible with Visual Studio 2017 by default. For it to be able to compile, it requires the VS2015 toolset and an older version of Win 10 SDK.
First, Select VC++ 2015.3 v140 toolset for desktop (x86,x64) from the list
Next, scroll to the bottom and select Windows 10 SDK(10.0.15063.0) for Desktop C++ [x86 and x64]
After we have installed the VS2015 toolset and Win10 SDK, we will need to update our project settings to use the VS2015 toolset instead of the VS2017 toolset.
Right click your project and go to Properties. Under the General tab, change the platform toolset to Visual Studio 2015(v140)
Now you may press Ctrl+F5 to run your project. And it should compile and run successfully.