GPGPUs

Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang at gmail.com> Ola Fosheim Grøstad" <ola.fosheim.grostad+dlang at gmail.com>
Wed Jan 22 04:51:47 PST 2014


On Saturday, 18 January 2014 at 19:34:49 UTC, ponce wrote:
> You can write everything in OpenCL and dispatch to both a CPU 
> or GPU device, managing the submit queues yourself.
>
>> I guess my question is whether people are interested in 
>> std.gpgpu (or some more sane name).
>
> What would be the purpose? To be on top of both CUDA and OpenCL?

Compiler support with futures could be useful, e.g. write D 
futures and let the compiler generate CUDA and OpenCL, while 
having a fall-back branch for the CPU in case the GPU is
unavailable/slow.

e.g.:

GPUStore store;
store[123]=somearray;
store[53]=someotherarray;

FutureCalcX futurecalcx = new....(store)...

futurecalcx.compute(store(123),store(53),1.34,299)
...
if(futurecalc.ready){
    y = futurecalc.result
}

or future with callback…

futurecalcx.thenCall(somecallback)
futurecalcx.compute(....)


More information about the Digitalmars-d mailing list