www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - DUDA

reply "Anders =?UTF-8?B?U2rDtmdyZW4i?= <anders sjogren.info> writes:
Hi!

I was wondering, is anyone aware if there been any efforts on 
using D as the foundation for a GPGPU language?

For example: Given that there is are LLVM based D and CUDA 
compilers, might there be a way to modify D to nVidia GPU-enabled 
DUDA similar to how C++ is modified to CUDA, without having to 
implement the entire compiler?

Keep up the interesting and good work!

Anders
May 14 2012
next sibling parent Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> writes:
--f46d04088d7b8abd3204c00331ed
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

I think CUDA is a completely pointless waste of time because of OpenCL.

On Mon, May 14, 2012 at 9:35 PM, <"Anders Sj=C3=B6gren\"
<anders sjogren.info>" puremagic.com> wrote:

 Hi!

 I was wondering, is anyone aware if there been any efforts on using D as
 the foundation for a GPGPU language?

 For example: Given that there is are LLVM based D and CUDA compilers,
 might there be a way to modify D to nVidia GPU-enabled DUDA similar to ho=

 C++ is modified to CUDA, without having to implement the entire compiler?

 Keep up the interesting and good work!

 Anders

--=20 Bye, Gor Gyolchanyan. --f46d04088d7b8abd3204c00331ed Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I think CUDA is a completely pointless waste of time because of OpenCL.<br>= <br><div class=3D"gmail_quote">On Mon, May 14, 2012 at 9:35 PM, <span dir= =3D"ltr">&lt;<a href=3D"mailto:&quot;Anders Sj=C3=B6gren\&quot; &lt;anders = sjogren.info&gt;&quot; puremagic.com" target=3D"_blank">&quot;Anders Sj=C3= =B6gren\&quot; &lt;anders sjogren.info&gt;&quot; puremagic.com</a>&gt;</spa= n> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex">Hi!<br> <br> I was wondering, is anyone aware if there been any efforts on using D as th= e foundation for a GPGPU language?<br> <br> For example: Given that there is are LLVM based D and CUDA compilers, might= there be a way to modify D to nVidia GPU-enabled DUDA similar to how C++ i= s modified to CUDA, without having to implement the entire compiler?<br> <br> Keep up the interesting and good work!<br> <br> Anders<br> </blockquote></div><br><br clear=3D"all"><div><br></div>-- <br>Bye,<br>Gor = Gyolchanyan.<br> --f46d04088d7b8abd3204c00331ed--
May 14 2012
prev sibling next sibling parent "Anders =?UTF-8?B?U2rDtmdyZW4i?= <anders sjogren.info> writes:
Hi Gor!

Then I guess you think C++ is a completely pointless waste of 
time because of C also? CUDA carries a subset of C++, while 
OpenCL does not, allowing for OO-programming, metaprogramming, 
etc. Adding to that, there is also strong IDE support (editing 
and debugging) for CUDA, while for OpenCL I have yet to find that 
(which would of course also be an issue for "DUDA"). Not 
_completely_ pointless yet, right?

Anyways, the original question was about GPU-oriented languages 
and D.

As a variant to CUDA in D (DUDA): If there was a way to use a 
subset of D (à la C++AMP) and have that turn into GPU and/or CPU 
(using the code-gen/backend of the LLVM CUDA compiler, or compile 
to OpenCL as a target for that matter), it'd be great. I too 
don't like vendor lock-in (CUDA=nVidia) and C++ has it's 
drawbacks as a language. The alternative of OpenCL is too much 
plain C for it to feel modern/productive. An alternative based on 
D could really have a potential of being great!?

To state it as an open question: What would be the D way of 
facilitating GPU(+CPU) programming?

Cheers

Anders

---

On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan wrote:
 I think CUDA is a completely pointless waste of time because of 
 OpenCL.

 On Mon, May 14, 2012 at 9:35 PM, <"Anders Sjögren\"
 <anders sjogren.info>" puremagic.com> wrote:

 Hi!

 I was wondering, is anyone aware if there been any efforts on 
 using D as
 the foundation for a GPGPU language?

 For example: Given that there is are LLVM based D and CUDA 
 compilers,
 might there be a way to modify D to nVidia GPU-enabled DUDA 
 similar to how
 C++ is modified to CUDA, without having to implement the 
 entire compiler?

 Keep up the interesting and good work!

 Anders


May 14 2012
prev sibling next sibling parent "Paulo Pinto" <pjmlp progtools.org> writes:
On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan wrote:
 I think CUDA is a completely pointless waste of time because of 
 OpenCL.

While I do agree it is better to use standard technologies, the truth is that CUDA wins out against OpenCL in most gamming and HPC scenarios, not to forget how the CUDA debugging tools are miles ahead from OpenCL ones. As such, most GPGPU developers don't care about OpenCL. -- Paulo
May 14 2012
prev sibling next sibling parent Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> writes:
--f46d040714c51a865c04c0052ce2
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

That's why CUDA is completely pointless: you're gonna wrap it anyway.
Instead of wrapping a past-age vendor-locked pre-OpenCL technology, you
could wrap modern portable technology.

The richness of the language is completely irrelevant, as it's gonna be
wrapped anyway.
Yes, CUDA is completely pointless.

On Mon, May 14, 2012 at 11:51 PM, <"Anders Sj=C3=B6gren\"
<anders sjogren.info>" puremagic.com> wrote:

 Hi Gor!

 Then I guess you think C++ is a completely pointless waste of time becaus=

 of C also? CUDA carries a subset of C++, while OpenCL does not, allowing
 for OO-programming, metaprogramming, etc. Adding to that, there is also
 strong IDE support (editing and debugging) for CUDA, while for OpenCL I
 have yet to find that (which would of course also be an issue for "DUDA")=

 Not _completely_ pointless yet, right?

 Anyways, the original question was about GPU-oriented languages and D.

 As a variant to CUDA in D (DUDA): If there was a way to use a subset of D
 (=C3=A0 la C++AMP) and have that turn into GPU and/or CPU (using the
 code-gen/backend of the LLVM CUDA compiler, or compile to OpenCL as a
 target for that matter), it'd be great. I too don't like vendor lock-in
 (CUDA=3DnVidia) and C++ has it's drawbacks as a language. The alternative=

 OpenCL is too much plain C for it to feel modern/productive. An alternati=

 based on D could really have a potential of being great!?

 To state it as an open question: What would be the D way of facilitating
 GPU(+CPU) programming?

 Cheers

 Anders

 ---


 On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan wrote:

 I think CUDA is a completely pointless waste of time because of OpenCL.

 On Mon, May 14, 2012 at 9:35 PM, <"Anders Sj=C3=B6gren\"
 <anders sjogren.info>" puremag**ic.com <http://puremagic.com>> wrote:

  Hi!
 I was wondering, is anyone aware if there been any efforts on using D a=



 the foundation for a GPGPU language?

 For example: Given that there is are LLVM based D and CUDA compilers,
 might there be a way to modify D to nVidia GPU-enabled DUDA similar to
 how
 C++ is modified to CUDA, without having to implement the entire compile=



 Keep up the interesting and good work!

 Anders



--=20 Bye, Gor Gyolchanyan. --f46d040714c51a865c04c0052ce2 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable That&#39;s why CUDA is completely pointless: you&#39;re gonna wrap it anywa= y. Instead of wrapping a past-age vendor-locked pre-OpenCL technology, you = could wrap modern portable technology.<div><br></div><div>The richness of t= he language is completely irrelevant, as it&#39;s gonna be wrapped anyway.<= /div> <div>Yes, CUDA is completely pointless.<br><br><div class=3D"gmail_quote">O= n Mon, May 14, 2012 at 11:51 PM, <span dir=3D"ltr">&lt;<a href=3D"mailto:&= quot;Anders Sj=C3=B6gren\&quot; &lt;anders sjogren.info&gt;&quot; puremagic= .com" target=3D"_blank">&quot;Anders Sj=C3=B6gren\&quot; &lt;anders sjogren= .info&gt;&quot; puremagic.com</a>&gt;</span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex">Hi Gor!<br> <br> Then I guess you think C++ is a completely pointless waste of time because = of C also? CUDA carries a subset of C++, while OpenCL does not, allowing fo= r OO-programming, metaprogramming, etc. Adding to that, there is also stron= g IDE support (editing and debugging) for CUDA, while for OpenCL I have yet= to find that (which would of course also be an issue for &quot;DUDA&quot;)= . Not _completely_ pointless yet, right?<br> <br> Anyways, the original question was about GPU-oriented languages and D.<br> <br> As a variant to CUDA in D (DUDA): If there was a way to use a subset of D (= =C3=A0 la C++AMP) and have that turn into GPU and/or CPU (using the code-ge= n/backend of the LLVM CUDA compiler, or compile to OpenCL as a target for t= hat matter), it&#39;d be great. I too don&#39;t like vendor lock-in (CUDA= =3DnVidia) and C++ has it&#39;s drawbacks as a language. The alternative of= OpenCL is too much plain C for it to feel modern/productive. An alternativ= e based on D could really have a potential of being great!?<br> <br> To state it as an open question: What would be the D way of facilitating GP= U(+CPU) programming?<br> <br> Cheers<br> <br> Anders<br> <br> ---<div class=3D"im"><br> <br> On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan wrote:<br> </div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l= eft:1px #ccc solid;padding-left:1ex"><div class=3D"im"> I think CUDA is a completely pointless waste of time because of OpenCL.<br> <br> On Mon, May 14, 2012 at 9:35 PM, &lt;&quot;Anders Sj=C3=B6gren\&quot;<br> &lt;<a href=3D"mailto:anders sjogren.info" target=3D"_blank">anders sjogren= .info</a>&gt;&quot; <a href=3D"http://puremagic.com" target=3D"_blank">pure= mag<u></u>ic.com</a>&gt; wrote:<br> <br> </div><div><div class=3D"h5"><blockquote class=3D"gmail_quote" style=3D"mar= gin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> Hi!<br> <br> I was wondering, is anyone aware if there been any efforts on using D as<br=

<br> For example: Given that there is are LLVM based D and CUDA compilers,<br> might there be a way to modify D to nVidia GPU-enabled DUDA similar to how<= br> C++ is modified to CUDA, without having to implement the entire compiler?<b= r> <br> Keep up the interesting and good work!<br> <br> Anders<br> </blockquote></div></div></blockquote> <br> <br> </blockquote></div><br><br clear=3D"all"><div><br></div>-- <br>Bye,<br>Gor = Gyolchanyan.<br> </div> --f46d040714c51a865c04c0052ce2--
May 14 2012
prev sibling next sibling parent Gor Gyolchanyan <gor.f.gyolchanyan gmail.com> writes:
--f46d0401fb1385bc3504c0054ebe
Content-Type: text/plain; charset=UTF-8

Again, grammar is irrelevant, since it's gonna be wrapped anyway.
And debuggers are just a matter of time to get right.
But the redundant vendor-locked obsolete technology is not gonna change.

On Tue, May 15, 2012 at 12:44 AM, Paulo Pinto <pjmlp progtools.org> wrote:

 On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan wrote:

 I think CUDA is a completely pointless waste of time because of OpenCL.

While I do agree it is better to use standard technologies, the truth is that CUDA wins out against OpenCL in most gamming and HPC scenarios, not to forget how the CUDA debugging tools are miles ahead from OpenCL ones. As such, most GPGPU developers don't care about OpenCL. -- Paulo

-- Bye, Gor Gyolchanyan. --f46d0401fb1385bc3504c0054ebe Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Again, grammar is irrelevant, since it&#39;s gonna be wrapped anyway.<div>A= nd debuggers are just a matter of time to get right.</div><div>But the redu= ndant vendor-locked obsolete technology is not gonna change.<br><br><div cl= ass=3D"gmail_quote"> On Tue, May 15, 2012 at 12:44 AM, Paulo Pinto <span dir=3D"ltr">&lt;<a href= =3D"mailto:pjmlp progtools.org" target=3D"_blank">pjmlp progtools.org</a>&g= t;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0= .8ex;border-left:1px #ccc solid;padding-left:1ex"> <div class=3D"im">On Monday, 14 May 2012 at 18:24:26 UTC, Gor Gyolchanyan w= rote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> I think CUDA is a completely pointless waste of time because of OpenCL.<br> </blockquote> <br></div> While I do agree it is better to use standard technologies, the truth is th= at CUDA wins out against OpenCL in most gamming and HPC scenarios, not to f= orget how the CUDA debugging tools are miles ahead from OpenCL ones.<br> <br> As such, most GPGPU developers don&#39;t care about OpenCL.<br> <br> --<br> Paulo<br> </blockquote></div><br><br clear=3D"all"><div><br></div>-- <br>Bye,<br>Gor = Gyolchanyan.<br> </div> --f46d0401fb1385bc3504c0054ebe--
May 14 2012
prev sibling next sibling parent "Robert Jacques" <sandford jhu.edu> writes:
On Mon, 14 May 2012 15:45:54 -0500, Gor Gyolchanyan
<gor.f.gyolchanyan gmail.com> wrote:

 That's why CUDA is completely pointless: you're gonna wrap it anyway.
 Instead of wrapping a past-age vendor-locked pre-OpenCL technology, you
 could wrap modern portable technology.

 The richness of the language is completely irrelevant, as it's gonna be
 wrapped anyway.
 Yes, CUDA is completely pointless.

CUDA, or more specifically the PTX byte code is an open standard with backends for x86, ATI and NVIDIA. And although we are providing a mapping from D to an intermediate representation, that representation should be able to express as many of the higher level concepts as possible in order for the JIT to generate the most optimal code. Technologically, OpenCL/DirectCompute are at a level below CUDA 1.0 (we are now at 4.x) since both standards were written with the lowest common denominator in mind. Furthermore, at least on the HPC side, until another manufacturer decides to make a GPU with ECC support, NVIDIA is the only game in town.
May 14 2012
prev sibling next sibling parent reply "Nick Sabalausky" <SeeWebsiteToContactMe semitwist.com> writes:
"Anders Sjgren" <anders sjogren.info>" <Anders =?UTF-8?B?U2rDtmdyZW4i?= 
<anders sjogren.info>> wrote in message 
news:ixkdokrmwmnkmciehqog forum.dlang.org...
 DUDA

Thanks, now I can't get "Camptown Races" out of my head! ;)
May 14 2012
parent Matthias Pleh <benutzer example.com> writes:
Am 15.05.2012 10:22, schrieb "Anders Sjögren" <anders sjogren.info>":
 On Tuesday, 15 May 2012 at 02:36:25 UTC, Nick Sabalausky wrote:
 Thanks, now I can't get "Camptown Races" out of my head!

 ;)

;-)

Doo-dah! doo-dah! ;)
May 15 2012
prev sibling next sibling parent "Anders =?UTF-8?B?U2rDtmdyZW4i?= <anders sjogren.info> writes:
On Tuesday, 15 May 2012 at 02:36:25 UTC, Nick Sabalausky wrote:
 Thanks, now I can't get "Camptown Races" out of my head!

 ;)

;-)
May 15 2012
prev sibling parent "Anders =?UTF-8?B?U2rDtmdyZW4i?= <anders sjogren.info> writes:
On Tuesday, 15 May 2012 at 09:03:01 UTC, Matthias Pleh wrote:
 Am 15.05.2012 10:22, schrieb "Anders Sjögren" 
 <anders sjogren.info>":
 On Tuesday, 15 May 2012 at 02:36:25 UTC, Nick Sabalausky wrote:
 Thanks, now I can't get "Camptown Races" out of my head!

 ;)

;-)

Doo-dah! doo-dah! ;)

LOL. I must say I'm content with the results of this post. First a flaming-war and then music! Great! ;-) I think I'll try again with a new post, carefully not mentioning anything remotely debatable (even though that seems hard with the standard set in this thread) or anything relatable to music. ;-) LOL again. Anders
May 15 2012