Live data from Hacker News

What every developer should know about GPU computing

codeconfessions.substack.com

161–170 of 186 posts

Re: What every developer should know about GPU computing

#161
post #61

Earlier quoted context omitted.

That's a refreshing take. I tried real hard to understand what some continental philosophers, such as Latour, Deleuze, and Žižek are on about, giving some of their texts quite some benefit of the doubt. After about ten years of doing so, I am more and more returning to my previous opinion that some of these just like to talk, and even though they have lots to say, they say so much, that I still have to do all the act…

Philosophy is often called the "Great Conversation" because, as you say, a lot of it is just people "saying things". Some of these things are incredibly insightful others are just babbling, the ones that make it into books generally have a higher ratio of insight to babble. You need to read philosophy, especially continental philosophy, with a critical eye. If you aren't chewing on and contemplating (and calling "bul…

It's one thing to disagree, but if there's a bunch of content-free words that's just bad writing.

Re: What every developer should know about GPU computing

#162
post #28

Now I understand why ML uses floats for precision. It wasn't a choice, it was because graphics code uses them. Another piece in the "why is ML so inefficient" puzzle! I wonder what that memory copying overhead is IRL. If it's like normal stuff it'll be brutal. I mean, they offload tcp processing into hardware to avoid that. This is way more data, though it is done in bigger chunks.

What's inefficient about floats? ML seems to get a big benefit out of having access to multiple/many orders of magnitude.

Re: What every developer should know about GPU computing

#163
post #135

Earlier quoted context omitted.

Going through a formal CS program will give you an intimate understanding of CPUs Please tell me you forgot the /s. I have a PhD in computer engineering from a top-20 school in US. Took a bunch of grad level classes, passed the quals (my specialty was ML accelerators). I do NOT have an “intimate understanding of CPUs”. I probably know a little bit more about CPUs than an average programmer. Which is very little. Mode…

I think the intention of the phrase, is that most cs programs include a systems course. you will learn von neumann arch, with cpu including {registers, clock, ALUs, etc}. Obviously modern CPUs have a lot more complexity, but even the basic coverage of CPUs is more coverage than GPUS.

Everything you learn about CPUs in your CS undergrad program is applicable to GPUs. Both are examples of von Neumann architecture, both have registers, ALUs, ISA, instruction schedulers, cache hierarchy, external DRAM, etc. The main difference is how they are being used - GPU, while a general purpose computer, is typically used as an accelerator for specific workloads, and it needs CPU to function. The distinction between the two is getting blurred as GPUs get better at executing control flows, and CPUs get more cores and wider vector operations.

Re: What every developer should know about GPU computing

#164
post #160

Someone emailed to complain about this: https://twitter.com/abhi9u/status/1715753871564476597 That is against HN's rules. In fact, it's the one thing that's important enough to be in both the site guidelines and FAQ. HN users feel extremely strongly about this. Q: Can I ask people to upvote my submission? A: No. Users should vote for a story because they personally find it intellectually interesting, not because some…

Sorry, I was not aware of this rule. Although it was submitted by someone I don't know.

But I won't do it again now that I know.

Re: What every developer should know about GPU computing

#165
post #47

>Most programmers have an intimate understanding of CPUs maybe this article is brilliant, but when the first line is something so blatantly untrue it really makes it hard to take the rest seriously

Agree that saying "intimate understanding" is a bit off the mark. Had the author written "intuitive understanding", it would have made a bit more sense.

However, given the prevalence of the von Neumann computing architecture, I don't think it's completely off the mark - even if people don't know von Neumann's name :)

Re: What every developer should know about GPU computing

#166

This article is pretty good but, looking at comments so far, nobody seems to have made the obvious/predictable point that it's terribly Nvidia specific. That would be understandable perhaps a few years ago. But the era where there was no reasonable alternative is over. Sycl is a good language which performs well across multiple hardware vendors. Sapphire rapids is very good hardware. AMD's MI300 looks amazing. Nvidia…

[deleted]

Re: What every developer should know about GPU computing

#167

Earlier quoted context omitted.

"Going through a formal CS program will give you an intimate understanding of CPUs and 101 other hilarious jokes you can tell yourself!"

Depends on the university! In my school to pass the computer architecture course you had to read and present a recent paper on CPU design.

In my school we had to implement a toy 16-bit CPU in VHDL.

Re: What every developer should know about GPU computing

#168
post #152

This article is pretty good but, looking at comments so far, nobody seems to have made the obvious/predictable point that it's terribly Nvidia specific. That would be understandable perhaps a few years ago. But the era where there was no reasonable alternative is over. Sycl is a good language which performs well across multiple hardware vendors. Sapphire rapids is very good hardware. AMD's MI300 looks amazing. Nvidia…

Sapphire Rapids is a CPU. AMD's primary focus for a GPU software ecosystem these days seems to be implementing CUDA with s/cuda/hip

Oops! Yes I meant Ponte Vecchio not Sapphire Rapids. It's now called "Intel data centre GPU Max" which although it doesn't exactly roll of the tounge is at least harder to confuse with a CPU!

Re: What every developer should know about GPU computing

#169

Earlier quoted context omitted.

Depends on the university! In my school to pass the computer architecture course you had to read and present a recent paper on CPU design.

In my school we had to implement a toy 16-bit CPU in VHDL.

Same! Fun times in the labs!

Re: What every developer should know about GPU computing

#170
post #103

Earlier quoted context omitted.

To be pedantic, a quadcopter is a drone, but a drone is not necessarily a quadcopter.

To be even more pedantic, "quadcopter" is a statement about airframe layout, and "drone" is a statement about control, and neither necessarily implies the other. You can have a non-drone quadcopter [0] or a non-quadcopter drone [1]. [0] e.g., https://www.jetsonaero.com/jetson-one [1] e.g., https://en.wikipedia.org/wiki/HESA_Shahed_136

Haha touché :-).
Post reply on HN