On Thursday, 8 February 2018 at 17:24:31 UTC, Ralph Doncaster
wrote:
On Thursday, 8 February 2018 at 15:59:28 UTC, Nicholas Wilson
wrote:
On Wednesday, 7 February 2018 at 15:16:46 UTC, Ralph Doncaster
wrote:
On Wednesday, 7 February 2018 at 15:10:36 UTC, Ralph
Doncaster wrote:
On Wednesday, 7 February 2018 at 08:05:46 UTC, Nicholas
Wilson wrote:
For OpenCL I develop and maintain DCompute:
http://code.dlang.org/packages/dcompute
https://github.com/libmir/dcompute
It has a much beautified interface to OpenCL (and is mostly
consistent with its CUDA interface). You can also write
kernels directly in D, however this requires that LDC is
built against my fork of LLVM:
https://github.com/thewilsonator/llvm
It's still in dev but should be usable. Please let me know
if you have issues using it.
I saw your library before, but it looked like it is ONLY for
native D on GPUs. I looked at it again, and don't see any
documentation or example showing that it works with standard
OpenCL kernels written in C.
Yeah its a wrapper for OpenCL so as long as the names and
signatures of the symbols match it should work.
OK, maybe I'll take a closer look.
p.s. since you seem to be a green team guy, you might not
know that llvm optimization sucks on AMD. I use -legacy when
building my kernels to get the good old compiler.
"green team guy"?
It that with the OpenCL C compiler?
nVidia's logo is green, while AMD's logo is often red.
Ah, I have no affiliation with any of the hardware vendors. The
only reason DCompute supports CUDA is LLVM has a backend for it
and I thought "it can't be too hard". I test (not nearly as
frequently as I should) on a rather old Intel CPU and very old
(CC2.1) Nvidia card, simply due to availability (i.e. I had them
before I started). CI Testing is on my list of things to do but I
just haven't got around to it yet.
On Linux with AMDGPU-Pro 17 and up, the driver uses
llvm/amdgpu. The driver still has the old gcc-based? compiler.
The old compiler can be selected with clBuildProgram using the
option "-legacy".
Unfortunately I can't help much there but I should definitely
test (and optimise) with AMD.
Hopefully it catches up with the legacy one because DCompute is
currently tied to LDC and hence LLVM. The mainlining of polly,
region vectoriser and VPlan should boost perf all round.