GPGPU work and Identifiers

Nicholas Wilson via Digitalmars-d digitalmars-d at puremagic.com
Sun Jun 19 04:12:50 PDT 2016


This thread is partly to announce that i will be adding to LDC 
the ability to generate code for GPUs through OpenCL, CUDA (and 
if i have time) Metal in my fork at 
https://github.com/thewilsonator/ldc and partly to request the 
reservation of the relevant Version identifiers. (Do I do this by 
a pull request?)

IIUC the version identifiers are based of the C #define's.
The OpenCL #define's are CL_VERSION_X_Y and __OPENCL_VERSION__ = 
XY0 (e.g. 220 for 2.2)
The cuda #define's are __CUDA__ and __CUDA_ARCH__ (similar to 
above but indicates the compute capability as opposed to the 
version)

BUT

That is sorta equivalent to the OS identifier. the arch 
identifier SPIR(V) and NVPTX and their 64bit counterparts are 
more indicative and useful to me earlier on (address space 
mapping and whatnot). So my question is what identifiers should i 
go with?


More information about the Digitalmars-d mailing list