D and GPGPU
Russel Winder via Digitalmars-d
digitalmars-d at puremagic.com
Wed Feb 18 07:15:06 PST 2015
It strikes me that D really ought to be able to work with GPGPU – is
there already something and I just failed to notice. This is data
parallelism but of a slightly different sort to that in std.parallelism.
std.concurrent, std.parallelism, std.gpgpu ought to be harmonious
though.
The issue is to create a GPGPU kernel (usually C code with bizarre data
structures and calling conventions) set it running and then pipe data in
and collect data out – currently very slow but the next generation of
Intel chips will fix this (*). And then there is the OpenCL/CUDA debate.
Personally I think OpenCL, for all it's deficiencies, as it is vendor
neutral. CUDA binds you to NVIDIA. Anyway there is an NVIDIA back end
for OpenCL. With a system like PyOpenCL, the infrastructure data and
process handling is abstracted, but you still have to write the kernels
in C. They really ought to do a Python DSL for that, but… So with D can
we write D kernels and have them compiled and loaded using a combination
of CTFE, D → C translation, C ompiler call, and other magic?
Is this a GSoC 2015 type thing?
(*) It will be interesting to see how NVIDIA responds to the tack Intel
are taking on GPGPU and main memory access.
--
Russel.
=============================================================================
Dr Russel Winder t: +44 20 7585 2200 voip: sip:russel.winder at ekiga.net
41 Buckmaster Road m: +44 7770 465 077 xmpp: russel at winder.org.uk
London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20150218/5cd7c745/attachment.sig>
More information about the Digitalmars-d
mailing list