May 30, 2017
On Tuesday, May 30, 2017 19:23:42 Jack Stouffer via Digitalmars-d-announce wrote:
> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
> > I fear the conversation will go like this, like it has for me:
> >  N: DCompute
> >  W: What's DCompute?
> >  N: Enables GPU programming with D
> >  W: Cool!
> >
> > instead of:
> >  N: D-GPU
> >  W: Cool! I can use D to program GPUs!
>
> This was literally what happened to me when I saw the headline.

The same thing happened to me when dcompute was brought up at dconf. Personally, "compute" just seems like a synonym for calculate that implies that a computer was used. So, compute seems incredibly generic to me and has no connection whatsoever to GPUs - but then again, I don't do GPU programming at all. It wouldn't surprise me if what this comes down to is that folks who regularly do GPU programming would think that compute likely referred to the GPU, whereas those who don't wouldn't, but I don't know. However, I would think having GPU in the name would connect with more people than compute would, since it would also mean something to those who aren't intimately familiar with the domain, whereas compute likely doesn't.

- Jonathan M Davis

May 30, 2017
On Tuesday, 30 May 2017 at 19:32:11 UTC, H. S. Teoh wrote:
> On Tue, May 30, 2017 at 07:23:42PM +0000, Jack Stouffer via Digitalmars-d-announce wrote:
>> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
>> > I fear the conversation will go like this, like it has for me:
>> > 
>> >  N: DCompute
>> >  W: What's DCompute?
>> >  N: Enables GPU programming with D
>> >  W: Cool!
>> > 
>> > instead of:
>> > 
>> >  N: D-GPU
>> >  W: Cool! I can use D to program GPUs!
>> 
>> This was literally what happened to me when I saw the headline.
>
> I confess the first conversation was also my reaction when I saw the name "DCompute".  I thought, "oh, this is some kind of scientific computation library, right? That comes with a set of standard numerical algorithms?".  Programming GPUs did not occur to me at all.
>
>
> T

Same with me.
May 31, 2017
On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
> On 5/30/2017 5:12 AM, Nicholas Wilson wrote:
>> Ah, isn't English wonderful. I guess Walter is suffering the inverse of the Calvin & Hobbes "Verbing nouns weirds the language", nouning verbs does weird the language, but only to those who aren't used to that particular nouning of the verb.
>
> Just to clarify, I find that "Compute" is not evocative of "GPU". I read "CUDA by Example" a couple years ago, and even downloaded the CUDA SDK and compiled/ran a simple program on a graphics card. But I never noticed that "Compute" had anything specific to do with GPU programming.
>
> I fear the conversation will go like this, like it has for me:
>
>  N: DCompute
>  W: What's DCompute?
>  N: Enables GPU programming with D
>  W: Cool!
>
> instead of:
>
>  N: D-GPU
>  W: Cool! I can use D to program GPUs!
>
> The problem with the first conversation is W may just move on to the next topic rather than investigate what DCompute is.

D-GPU is very misleading to people who use the GPU for its original purpose, which is graphics programming. One could assume D-GPU being an alternative to Vulkan, OpenGL, DirectX.

The term 'compute' is well established with the community of people using the gpu for, well, compute purpose. You need to ask your self if you want to attract people who understand that term and are willing to use or try it with D, or if you want to inform a broader spectrum of people that 'D' can now do some (whatever) stuff on the 'GPU'.

So +1 for DCompute, but if you insist you should definitely narrow it down to D-GPGPU.
May 31, 2017
On Tuesday, 30 May 2017 at 19:23:42 UTC, Jack Stouffer wrote:
> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
>> I fear the conversation will go like this, like it has for me:
>>
>>  N: DCompute
>>  W: What's DCompute?
>>  N: Enables GPU programming with D
>>  W: Cool!
>>
>> instead of:
>>
>>  N: D-GPU
>>  W: Cool! I can use D to program GPUs!
>
> This was literally what happened to me when I saw the headline.

Same here ...

DCompute may be a established term in that specific community but most other people do not pay attention to it. Yet, its a massive feature for any programming language, that is frankly being obscured by its naming.

While D-GPU may not be the most accurate term, as people may assume its about graphical programming, marketing and accuracy are not exactly the same. But that can be solved with later having D-DirectX, D-OpenGL...
May 31, 2017
On Wednesday, May 31, 2017 09:07:16 ParticlePeter via Digitalmars-d-announce wrote:
> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
> > On 5/30/2017 5:12 AM, Nicholas Wilson wrote:
> >> Ah, isn't English wonderful. I guess Walter is suffering the inverse of the Calvin & Hobbes "Verbing nouns weirds the language", nouning verbs does weird the language, but only to those who aren't used to that particular nouning of the verb.
> >
> > Just to clarify, I find that "Compute" is not evocative of "GPU". I read "CUDA by Example" a couple years ago, and even downloaded the CUDA SDK and compiled/ran a simple program on a graphics card. But I never noticed that "Compute" had anything specific to do with GPU programming.
> >
> > I fear the conversation will go like this, like it has for me:
> >  N: DCompute
> >  W: What's DCompute?
> >  N: Enables GPU programming with D
> >  W: Cool!
> >
> > instead of:
> >  N: D-GPU
> >  W: Cool! I can use D to program GPUs!
> >
> > The problem with the first conversation is W may just move on to the next topic rather than investigate what DCompute is.
>
> D-GPU is very misleading to people who use the GPU for its original purpose, which is graphics programming. One could assume D-GPU being an alternative to Vulkan, OpenGL, DirectX.
>
> The term 'compute' is well established with the community of people using the gpu for, well, compute purpose. You need to ask your self if you want to attract people who understand that term and are willing to use or try it with D, or if you want to inform a broader spectrum of people that 'D' can now do some (whatever) stuff on the 'GPU'.
>
> So +1 for DCompute, but if you insist you should definitely narrow it down to D-GPGPU.

Something like d-compute-gpu or d-gpu-compute maybe?

I don't know. Maybe dcompute is fine, but it's clear that for a number of folks, it's a pretty meaningless name. On the other hand, I don't know how many of such folks would even be interestend in using it.

- Jonathan M Davis

May 31, 2017

Dne 31.5.2017 v 12:01 Jonathan M Davis via Digitalmars-d-announce napsal(a):
> On Wednesday, May 31, 2017 09:07:16 ParticlePeter via Digitalmars-d-announce
> wrote:
>> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
>>> On 5/30/2017 5:12 AM, Nicholas Wilson wrote:
>>>> Ah, isn't English wonderful. I guess Walter is suffering the
>>>> inverse of the Calvin & Hobbes "Verbing nouns weirds the
>>>> language", nouning verbs does weird the language, but only to
>>>> those who aren't used to that particular nouning of the verb.
>>> Just to clarify, I find that "Compute" is not evocative of
>>> "GPU". I read "CUDA by Example" a couple years ago, and even
>>> downloaded the CUDA SDK and compiled/ran a simple program on a
>>> graphics card. But I never noticed that "Compute" had anything
>>> specific to do with GPU programming.
>>>
>>> I fear the conversation will go like this, like it has for me:
>>>   N: DCompute
>>>   W: What's DCompute?
>>>   N: Enables GPU programming with D
>>>   W: Cool!
>>>
>>> instead of:
>>>   N: D-GPU
>>>   W: Cool! I can use D to program GPUs!
>>>
>>> The problem with the first conversation is W may just move on
>>> to the next topic rather than investigate what DCompute is.
>> D-GPU is very misleading to people who use the GPU for its
>> original purpose, which is graphics programming. One could assume
>> D-GPU being an alternative to Vulkan, OpenGL, DirectX.
>>
>> The term 'compute' is well established with the community of
>> people using the gpu for, well, compute purpose. You need to ask
>> your self if you want to attract people who understand that term
>> and are willing to use or try it with D, or if you want to inform
>> a broader spectrum of people that 'D' can now do some (whatever)
>> stuff on the 'GPU'.
>>
>> So +1 for DCompute, but if you insist you should definitely
>> narrow it down to D-GPGPU.
> Something like d-compute-gpu or d-gpu-compute maybe?
>
> I don't know. Maybe dcompute is fine, but it's clear that for a number of
> folks, it's a pretty meaningless name. On the other hand, I don't know how
> many of such folks would even be interestend in using it.
>
> - Jonathan M Davis
>
Why not just gpu-compute or GPUcompute
May 31, 2017
On Tuesday, 30 May 2017 at 21:02:31 UTC, Jonathan M Davis wrote:
> It wouldn't surprise me if what this comes down to is that folks who regularly do GPU programming would think that compute likely referred to the GPU, whereas those who don't wouldn't, but I don't know.


As someone who has done OpenGL, OpenCL and CUDA programming, I find the term "Compute" (especially with a capital) very adequate and related to GPU programming.

- Compute shaders
- OpenCL (Open Computing Language)

Compute APIs are not so much about the GPU that they are about reifying tasks and using multiple levels of memory explicitely (not all memory considered equal), so mentionning "GPU" feels a bit 2010 now that much more devices run OpenCL.
May 31, 2017
On Wednesday, 31 May 2017 at 09:07:16 UTC, ParticlePeter wrote:
> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
>> [...]
>
> D-GPU is very misleading to people who use the GPU for its original purpose, which is graphics programming. One could assume D-GPU being an alternative to Vulkan, OpenGL, DirectX.
>
> The term 'compute' is well established with the community of people using the gpu for, well, compute purpose. You need to ask your self if you want to attract people who understand that term and are willing to use or try it with D, or if you want to inform a broader spectrum of people that 'D' can now do some (whatever) stuff on the 'GPU'.
>
> So +1 for DCompute, but if you insist you should definitely narrow it down to D-GPGPU.

D-GPGPU is explicit.
May 31, 2017
On 5/30/17 3:23 PM, Jack Stouffer wrote:
> On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
>> I fear the conversation will go like this, like it has for me:
>>
>>  N: DCompute
>>  W: What's DCompute?
>>  N: Enables GPU programming with D
>>  W: Cool!
>>
>> instead of:
>>
>>  N: D-GPU
>>  W: Cool! I can use D to program GPUs!
> 
> This was literally what happened to me when I saw the headline.

I'm in the same camp, and I have a passing familiarity with the domain. Worse, only one day after the talk I'd already forgotten and thought DCompute does what DHDL does.

It seems there are two paths - either choose an unrelated name and push it as a brand (e.g. Amazon, Google, and in our community Phobos or Vibe), or choose a name that immediately establishes the library as "the D approach to GPGPUs". The name "DCompute" is in an unfortunate corner of the branding space.


Andrei
May 31, 2017
On Tuesday, 30 May 2017 at 18:06:56 UTC, Walter Bright wrote:
> On 5/30/2017 5:12 AM, Nicholas Wilson wrote:
>> Ah, isn't English wonderful. I guess Walter is suffering the inverse of the Calvin & Hobbes "Verbing nouns weirds the language", nouning verbs does weird the language, but only to those who aren't used to that particular nouning of the verb.
>
> Just to clarify, I find that "Compute" is not evocative of "GPU". I read "CUDA by Example" a couple years ago, and even downloaded the CUDA SDK and compiled/ran a simple program on a graphics card. But I never noticed that "Compute" had anything specific to do with GPU programming.
>
> I fear the conversation will go like this, like it has for me:
>
>  N: DCompute
>  W: What's DCompute?
>  N: Enables GPU programming with D
>  W: Cool!
>
> instead of:
>
>  N: D-GPU
>  W: Cool! I can use D to program GPUs!
>
> The problem with the first conversation is W may just move on to the next topic rather than investigate what DCompute is.

OK, I get that a portion of the community seems to think that dcompute is either too generic, is too easily passed over by the fact that it doesn't mention GPUs or otherwise could be named better.
I am more inclined to be persuaded by the fact that everybody that has actually done GPU programming has said that it makes sense to them.

But can we please reduce the bike shedding, that was not the point of this announcement, which was to bring together people interested in contributing to either the runtime libraries, LDC or LLVM and become familiar with goals, expected route of development and infrastructure.

Perhaps there will be scope for renaming if/when this also includes graphics when either OpenCL is merged into the Vulkan API or Petar Kirov gets Vulkan SPIRV generation going on LLVM, but for now the name stays.

Nic