Hi, First, I would like to say thank you because you spend time answering my questions and you are not paid. I appreciate a lot. I will take a look more seriously at OpenCL. I am mainly interested in "non-implemented operations". I also think that the problem is related to the fact that it is "difficult" to make a link between Rtools and nvcc compiler. I have looked at many R packages for GPU and a lot of them do not seem available on windows. Finally, If you find the solution of how to integrate easily OpenACC and Rtools in the future, let me know. I think it would be great to have a "RcppOpenACC" package. This would enable developers to create flexible code in C++ (CPU and GPU at the same time!).
Best regards, Emmanuel 2018-01-22 10:18 GMT-05:00 Charles Determan <cdeterma...@gmail.com>: > Hi Emmanuel, > > As Dirk mentioned, I am involved in making GPU computing as portable and > accessible as possible. Depending on your needs, most functionality may > already be implemented in my gpuR package (https://cran.r-project.org/ > package=gpuR). It is an OpenCL backend so it can be installed > essentially anywhere for any hardware. It also has new functionality to > accept custom, user provided OpenCL kernels to extend to non-implemented > operations. That said, I am working on setting up the CUDA backend. I > have had some success with Linux systems but trouble with Windows. The > main problem with that, as you may have discovered, is that NVIDIA's nvcc > compiler requires the use of cl.exe on Windows systems. This prevents the > normal use of Rtools mingw functions. As such, I am still looking in to > how I can create a solid configure script for Windows systems so that > cl.exe can be used instead of g++. If I can be of help, feel free to reach > out. I need a bit more dedicated time to sort out Windows but I have been > quite busy as of late. > > Regards, > Charles > > On Sun, Jan 21, 2018 at 9:32 AM, Emmanuel Hamel <manu.ha...@gmail.com> > wrote: > >> Hi, >> >> Thank you for your answer! I am already able to use the OpenMP-style >> without RcppParallel, thanks to some examples given in the Rcpp community. >> I will have a look at the RViennaCL. >> >> For my problem, the compiler is not important. I just mentioned the one I >> use as an example. However, I really have to use Windows. >> >> Best regards, >> >> Emmanuel >> >> >> 2018-01-21 10:26 GMT-05:00 Dirk Eddelbuettel <e...@debian.org>: >> >>> >>> On 21 January 2018 at 09:55, Emmanuel Hamel wrote: >>> | Hope you are all feeling good. I have a question. First, I use windows >>> and >>> >>> Never the easiest platform (in my very personal view). >>> >>> | I want to use OpenACC. For the moment, I am able to compile GPU Cuda C >>> code >>> | with Microsoft visual studio and call it from a DLL in Windows. Also, >>> I am >>> | able to use OpenMP with the Rcpp package. Nevertheless, I want to >>> extend >>> | these possibilities for a project regarding dynamic hedging program for >>> | segregated funds. Hence, I would like to know if you have any tips >>> | regarding the use of OpenACC in Rcpp. In particular, what are the files >>> >>> I am not aware of anyone using it now. That said, it would be nice to >>> have. >>> >>> | that I need to modify in a RStudio project in order to be able to >>> compile >>> | pragma commands with the OpenACC compiler? For the moment, I use the >>> PGI >>> | compiler. >>> >>> That puts a third constraint up. Which, in aggregate, makes it even less >>> likely that someone is doing this already. >>> >>> A few people use Rcpp together with CUDA code. Charles has been working >>> on >>> RViennaCL which is another "portable" approach for multiple backends: >>> >>> https://cran.r-project.org/package=RViennaCL >>> >>> He may be following up here too in a day or two. >>> >>> Other than that, RcppParallel exists, is fairly widely used, and gives >>> you >>> higher-level abstractions for OpenMP-style parallelism. No GPU though. >>> >>> So in short if you need >>> - OpenACC >>> - on Windows >>> - with PGI >>> you may have to roll up your sleeves and build it. We will help as we >>> can. >>> >>> If it were me, I'd relax as many constraints here as possible. So how >>> about >>> figuring out how to interface OpenACC on any suitable platform and >>> compiler >>> pair? >>> >>> Dirk >>> >>> -- >>> http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org >>> >> >> >> _______________________________________________ >> Rcpp-devel mailing list >> Rcpp-devel@lists.r-forge.r-project.org >> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel >> > >
_______________________________________________ Rcpp-devel mailing list Rcpp-devel@lists.r-forge.r-project.org https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel