www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - Calling D from Ruby for GPU computing

reply Prasun Anand <prasunanand.bitsp gmail.com> writes:
Hi,

I wrote a Linear Mixed Model tool for Genome Wide Association 
Studies(GWAS) called
[faster_lmm_d](https://github.com/prasunanand/faster_lmm_d). It 
is built on LDC
and is faster than its Python alternative. Also, its the only 
GWAS tool with a GPU
backend.

I am interested in porting ` faster_lmm_d` to Ruby. Though, it is 
still a work in progress, I have written a blog about my findings.

Blog: 
http://www.prasunanand.com/gpu-computing/2017/07/25/gsoc17-calling-d-from-ruby-for-gpu-computing.html

I would love to hear your feedback.

Regards,
Prasun

[Previously posted on LDC thread: 
http://forum.dlang.org/thread/rzrawenyssbiidsgtohx forum.dlang.org]
Jul 28 2017
parent reply Michael <michael toohuman.io> writes:
On Saturday, 29 July 2017 at 06:54:47 UTC, Prasun Anand wrote:
 Hi,

 I wrote a Linear Mixed Model tool for Genome Wide Association 
 Studies(GWAS) called
 [faster_lmm_d](https://github.com/prasunanand/faster_lmm_d). It 
 is built on LDC
 and is faster than its Python alternative. Also, its the only 
 GWAS tool with a GPU
 backend.

 I am interested in porting ` faster_lmm_d` to Ruby. Though, it 
 is still a work in progress, I have written a blog about my 
 findings.

 Blog: 
 http://www.prasunanand.com/gpu-computing/2017/07/25/gsoc17-calling-d-from-ruby-for-gpu-computing.html

 I would love to hear your feedback.

 Regards,
 Prasun

 [Previously posted on LDC thread: 
 http://forum.dlang.org/thread/rzrawenyssbiidsgtohx forum.dlang.org]
I don't know much about your work but it sounds like an interesting application for D. How easy was it interfacing with cuda? Was it just cuda you targeted or would it also work with OpenCL? What made you choose D over going straight to C to work directly with cuda?
Aug 04 2017
parent reply Prasun Anand <prasunanand.bitsp gmail.com> writes:
On Saturday, 5 August 2017 at 01:15:19 UTC, Michael wrote:
 On Saturday, 29 July 2017 at 06:54:47 UTC, Prasun Anand wrote:
 Hi,

 I wrote a Linear Mixed Model tool for Genome Wide Association 
 Studies(GWAS) called
 [faster_lmm_d](https://github.com/prasunanand/faster_lmm_d). 
 It is built on LDC
 and is faster than its Python alternative. Also, its the only 
 GWAS tool with a GPU
 backend.

 I am interested in porting ` faster_lmm_d` to Ruby. Though, it 
 is still a work in progress, I have written a blog about my 
 findings.

 Blog: 
 http://www.prasunanand.com/gpu-computing/2017/07/25/gsoc17-calling-d-from-ruby-for-gpu-computing.html

 I would love to hear your feedback.

 Regards,
 Prasun

 [Previously posted on LDC thread: 
 http://forum.dlang.org/thread/rzrawenyssbiidsgtohx forum.dlang.org]
I don't know much about your work but it sounds like an interesting application for D. How easy was it interfacing with cuda?
It was easy interfacing CUDA. I used `dstep` to create the bindings and for CUDA and CUBLAS headers. I got interesting results but would be working on improving the performance.
 Was it just cuda you targeted or would it also work with OpenCL?
Yes, OpenCL is supported using ArrayFire. I have targeted CUDA specifically for better performance.
 What made you choose D over going straight to C to work 
 directly with cuda?
`faster_lmm_d`
Aug 06 2017
parent Prasun Anand <prasunanand.bitsp gmail.com> writes:
 What made you choose D over going straight to C to work 
 directly with cuda?
`faster_lmm_d` was written in D. Since, I needed to use CUDA, I had to create the D bindings. I found using CUDA for GPU computing in D as easy as doing it in C. Regards, Prasun
Aug 06 2017