Is there any arbitrary precision library for CUDA with VISUAL STUDIO

I am trying to implement an encryption library to GPU. I am using win10, VS2017, and CUDA 9.1.

The gmp library that it uses is not allowed to call on device code.

So I have to convert some functions into device code.

Since it will take a very long time or “impossible” to convert the whole gmp library to device code, I am searching for arbitrary precision arithmetic library that I can use with CUDA.

But unfortunately, the libraries that people say like: gpuprec, cump, campary, and xmp are all linux libraries using makefile to compile which I can’t use it with visual studio.

Even though I compiled it on linux, I am unable to link the .a file and .so file on Visual Studio.

Back to the title, Is there any arbitrary precision library for CUDA using VISUAL STUDIO or some solutions that allow me to install the mentioned libraries above on VISUAL STUDIO?

Look harder

a Visual Studio project file is part of XMP

It’s just that XMP hasn’t been maintained a lot recently, so it lacks adaptations to architectures beyond Maxwell.

Also there is no device API for XMP. As far as I know all computations have to be triggered from the host.

I am aware that XMP have a project file and I have tried it.

I cannot compile the sample code with nvcc which show an error that it cannot read the “xmp.h” file even though I include the whole dir path like this(#include “c:…\xmp.h”).

And I also have looked up the error online. The possible reason it is not working is that I haven’t linked the library.

Then as previously mentioned, I managed to use the “makefile” to generate the library on Linux which is a “.so” and “.a” file which is not compatible with windows.

Do you have any other suggestion? or am I doing it wrong?
Thanks for your help.

A missing path for header files can usually be added to a project file/solution under “Additional Include Directories”

A similar option exists for the directories where .lib (library) files are going to be searched for.

Thanks for replying.

As before mentioned, with the “Makefile” using on Linux, it generates “.a” and “.so” files as the library not “.lib”.

Also “.a” and “.so” type of libraries are not allowed to link to visual studio.

So the problem I am having now is not having a “.lib” file to let me link to VS.

Do you have any suggestion on how to solve it?