¿Cómo trabajar GMP, MPIR o MPFR con CUDA?

Estoy trabajando con números excesivamente grandes y para ello uso C y el compilador gcc para CPU. Lo que me gustaría es implementar el algoritmo que tengo en C para hacerlo funcionar en CUDA. Ya tengo hecho el código y todo pensado para poder ejecutarlo en CUDA, salvo por el problema de que la librería GMP que tengo configurada para el proyecto de Visual Studio no es capaz de compilarse en la GPU porque esta librería está hecha para CPU. Sé que existen varias librerías que implementan GMP en CUDA, pero las que conozco o no están completas y la mayoría de las funciones no existen o están descatalogadas y anticuadas para las versiones modernas de Visual Studio y CUDA Runtime.

De las búsquedas que tengo de estas librerías para GPU:

  • CUMP
    -XMP Y XMP 2.0
    -CAMPARY
    -cuGMP
    -garprec v1.2
    -GPUMP
    -CGBN

Y algunas más, el tema es que no consigo hacerlas funcionar bien y tener todas las instrucciones que necesito para mi algoritmo. Si al menos tuviera información detallada dentro de ellas, podría aprender a hacerlas funcionar bien.

If none of the multi-precision / arbitrary-precision libraries that you found work for your purposes, and assuming they are governed by an open-source license of some kind, you have the option of fixing any issues you found, extending the functionality, and improving the documentation as you see fit, then donating your work to the public under the terms of that license. That is the advantage of open-source software.

1 Like

Muchas gracias por la respuesta.
Ya me gustaría hacerlo, el problema es que no soy informático y no conozco bien los fundamentos básicos de programación para estos niveles o me requeriría mucho esfuerzo y tiempo. Pero muchas gracias por la respuesta!