Esta es una actualización de la biblioteca original Cudafy.net alojada en CodePlex para admitir Mono en MacOS y Linux.
La solución se actualizó para crear una sola DLL utilizando ILMerge en el proyecto cudafy.net. Compilar con VS 2017, Target Release/AnyCPU.
Después de compilar, cree un archivo llamado cudafy.net.dll.config, con los siguientes contenidos:
< configuration >
< dllmap dll = " OpenCL " target = " /opt/intel/opencl/lib64/libOpenCL.so " os = " !windows,osx " />
< dllmap dll = " OpenCL " target = " /System/Library/Framework/OpenCL.framework/OpenCL " os = " osx " />
</ configuration >Para el soporte de OpenCl en Linux con procesadores Intel, instale los tiempos de ejecución de Intel OpenCl: https://software.intel.com/en-us/articles/opencl-drivers#cpu-lin-rh
No se requieren más medidas sobre macOS.
El lanzamiento dinámico de las funciones de GPU no es compatible con Linux, es decir
gpu . Launch ( ) . thekernel ( ) ;lanzará una excepción de "miembro perdido". Solo el lanzamiento estándar funcionará:
gpu . Launch ( 1 , 1 , “ thekernel ” ) ; CUDAFY trabajando en DWSIM en MacOS y Linux: