Esta é uma atualização da biblioteca CUDAFY.NET original hospedada no CodePlex para suportar o Mono no macOS e o Linux.
A solução foi atualizada para criar uma única DLL usando o Ilmerge no projeto CUDAFY.NET. Compilar com o VS 2017, liberação de destino/AnyCPU.
Após a compilação, crie um arquivo chamado CudAfy.net.dll.config, com o seguinte conteúdo:
< 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 suporte a OpenCL no Linux com processadores Intel, instale o Intel OpenCl RunTents: https://software.intel.com/en-us/articles/opencl-drivers#cpu-lin--rh
Nenhuma ação adicional é necessária no macOS.
O lançamento dinâmico de funções da GPU não é suportado no Linux, ou seja,
gpu . Launch ( ) . thekernel ( ) ;lançará uma exceção de "membro ausente". Somente o lançamento padrão funcionará:
gpu . Launch ( 1 , 1 , “ thekernel ” ) ; CudAfy trabalhando no DWSIM em macOS e Linux: