DCompute v0.1.0 supporting OpenCL 2.1+ and CUDA

Nicholas Wilson iamthewilsonator at hotmail.com
Sun Oct 15 07:50:36 UTC 2017


On Sunday, 15 October 2017 at 06:58:19 UTC, Ilya Yaroshenko wrote:
> On Sunday, 15 October 2017 at 05:57:35 UTC, Nicholas Wilson 
> wrote:
>> I am very pleased to announce the first proper release of 
>> DCompute, a framework for heterogeneous computing for D. It 
>> wraps the OpenCL and CUDA runtimes to run compute kernels for 
>> computationally intensive workloads.
>>
>> https://github.com/libmir/dcompute/releases/tag/v0.1.0
>>
>> Thanks to all who helped make this happen.
>>
>> Mike, want me to do another blog post about this and the CUDA 
>> support?
>>
>> P.S: can those who answer foundation at dlang.org please tell me 
>> what you think of my plan to advance the development and 
>> exposure of DCompute?
>
> Nicholas, could you please create an example with mir.ndslice 
> and mir.math.common? --Ilya

using ndslice should be no problem, mir.math.common will not work 
for OpenCL as is because the SPIR-V backend does not use the LLVM 
intrinsics. Instead I have to do things like
https://github.com/libmir/dcompute/blob/master/source/dcompute/std/opencl/index.d#L17
to get the functions correct. Hopefully that will be resolved 
when I get the backend merged into LLVM, but that won't happen 
until (hopefully shortly) after IWOCL in mid may.

In the mean time I need to create a dispatcher similar to 
https://github.com/libmir/dcompute/blob/master/source/dcompute/std/index.d with `__dcompute_reflect` all over the place to get things to work.


More information about the Digitalmars-d-announce mailing list