Hacker News new | past | comments | ask | show | jobs | submit login

> they've never used a different definition

The term "core" had a concrete meaning before Nvidia defined it to mean number of FMA units, and it's obviously no accident: they get to claim they have 32x more cores than would be the case by common definition. They are the odd one out; should Intel and AMD start multiplying their number of cores by the SIMD width? You would accept that as a "core"?

Now, as I wrote above, they have changed it AGAIN: they are now double-counting each "core" because it has some (limited) superscalar capability.




> The term "core" had a concrete meaning before Nvidia defined it to mean number of FMA units

It was AMD/ATI who started doing it. Nvidia followed, and they didn't really have a choice if they wanted to avoid an "AMD has 320 shader cores yet Nvidia only has 16" marketing nightmare.

> Now, as I wrote above, they have changed it AGAIN: they are now double-counting each "core" because it has some (limited) superscalar capability.

They did not. In Turing, there's one FP32 and one INT32 pipeline with dual issue, in Ampere, there's one FP32 and one (INT32+FP32) pipeline, allowing dual issue of 2 FP32 and INT32 is not being used.

That can only be done if there are 2 physical FP32 instances. There is no double counting.

If your point is that this second FP32 unit can't always be used at 100%, e.g. because the INT32 is used, then see my initial comment: it's the number of physical instances, nothing more, nothing less. It doesn't say anything about their occupancy. The same was obviously always the case for AMD as well, since they had a VLIW5 ISA when they introduced the term, and I'm pretty sure that those were not always fully occupied either.


> If your point is that this second FP32 unit can't always be used at 100%

My point is that the second FP32 unit is not a core, in the sense of https://www.amazon.com/Computer-Architecture-Quantitative-Jo... which, it is my understanding, was a well-established standard; nothing more, nothing less.


Is that it? According to that definition, the first FP32 unit is not a core either...

But, again, if you want to blame someone for this terrible, terrible marketing travesty, start with AMD. They started it all...

My point was simply been that, contrary to your assertion, Nvidia and AMD have never changed the definition of what they consider to be a core, even if that definition doesn't adhere to computer science dogma.


Well Cloud Vendor also use the term "Core" when they meant a CPU thread. With SMT8 you now get 8 CPU Core. per Actual Core.

I would love people to backlash on that too. Unfortunately the ship has sailed.


One "CUDA core" is indeed one GPU thread. The lane of a GPU SIMD is nothing like CPU SIMD, and can independently branch (even if that branching can be much more expensive than on a CPU).


> One "CUDA core" is indeed one GPU thread.

This is not true, just like a shader core with AMD was not a GPU thread.

For example, the 2900 XT had 320 shader cores, but since it used VILW-5 ISA, that corresponds to 64 GPU threads.

Similarly, an RTX 3080 has 8704 CUDA cores, but there are 2 FP32 ALUs per thread, resulting in 4252 threads, and 68 SMs since, just like Turing, there are 64 threads per SM.


I think at this point it's just Azure using "vCores" and everybody else has migrated to less dishonest terminology.


Yes they used to be vCore ( But you will be surprised how many developers and industry expert didn't know it was a thread )

They then dropped the vCore, so it is now simply Core.


I can't find any cloud providers using the term "core". Azure is using "vCore" and the others are using "vCPU".




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: