www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - which LLVM source should I use in order to use SPIRV through DCompute

reply bioinfornatics <bioinfornatics fedoraproject.com> writes:
Dear,

Dcompute: https://github.com/libmir/dcompute need a SPIRV capable 
LLVM.
For this Dcompute project show 
https://github.com/thewilsonator/llvm as a SPIRV capable LLVM.

But it is not an official llvm source, moreover the source is 
outdated. Indeed it provide LLVM 5.0.0 while the current stable 
is the 6.0.0

Furthermore kronos group provide too an old SPIRV capable LLVM 
https://github.com/KhronosGroup/SPIRV-LLVM (3.6.1)

So can I use official LLVM source in order to use dcompute ?
If no, why the SPIRV feature part added to LLVM was not send to 
the upstream ?

Thanks

Best regard
Apr 26 2018
parent reply Nicholas Wilson <iamthewilsonator hotmail.com> writes:
On Thursday, 26 April 2018 at 22:51:59 UTC, bioinfornatics wrote:
 Dear,

 Dcompute: https://github.com/libmir/dcompute need a SPIRV 
 capable LLVM.
 For this Dcompute project show 
 https://github.com/thewilsonator/llvm as a SPIRV capable LLVM.

 But it is not an official llvm source, moreover the source is 
 outdated. Indeed it provide LLVM 5.0.0 while the current stable 
 is the 6.0.0
It should provide 6.0.0, I'll fix this at DConf.
 Furthermore kronos group provide too an old SPIRV capable LLVM 
 https://github.com/KhronosGroup/SPIRV-LLVM (3.6.1)
Yep it's wayyy too old.
 So can I use official LLVM source in order to use dcompute ?
No. I plan to fix this after DConf.
 If no, why the SPIRV feature part added to LLVM was not send to 
 the upstream ?
Because Khronos hasn't got their act together or doesn't understand the importance of widespread support.
Apr 26 2018
parent bioinfornatics <bioinfornatics fedoraproject.org> writes:
On Thursday, 26 April 2018 at 23:06:54 UTC, Nicholas Wilson wrote:
 On Thursday, 26 April 2018 at 22:51:59 UTC, bioinfornatics 
 wrote:
 Dear,

 Dcompute: https://github.com/libmir/dcompute need a SPIRV 
 capable LLVM.
 For this Dcompute project show 
 https://github.com/thewilsonator/llvm as a SPIRV capable LLVM.

 But it is not an official llvm source, moreover the source is 
 outdated. Indeed it provide LLVM 5.0.0 while the current 
 stable is the 6.0.0
It should provide 6.0.0, I'll fix this at DConf.
 Furthermore kronos group provide too an old SPIRV capable LLVM 
 https://github.com/KhronosGroup/SPIRV-LLVM (3.6.1)
Yep it's wayyy too old.
 So can I use official LLVM source in order to use dcompute ?
No. I plan to fix this after DConf.
 If no, why the SPIRV feature part added to LLVM was not send 
 to the upstream ?
Because Khronos hasn't got their act together or doesn't understand the importance of widespread support.
Thanks Nicholas for this quick answer, About to push your work on llvm SPIR V enabled , by official upstream (I was not very clear) I mean llvm.org not the khronos group. Indeed I see on the llvm.org page a project named libclc : http://libclc.llvm.org/ and this project aims to implement the OpenCL standard library. Maybe your work could be put to this official project ? Have a nice day Jonathan
Apr 27 2018