Remix.run Logo
animal531 19 hours ago

It's funny how ideas come and go. I made this very comment here on Hacker News probably 4-5 years ago and received a few down votes for it at the time (albeit that I was thinking of computers in general).

It would take a lot of work to make a GPU do current CPU type tasks, but it would be interesting to see how it changes parallelism and our approach to logic in code.

goku12 19 hours ago | parent | next [-]

> I made this very comment here on Hacker News probably 4-5 years ago and received a few down votes for it at the time

HN isn't always very rational about voting. It will be a loss if you judge any idea on their basis.

> It would take a lot of work to make a GPU do current CPU type tasks

In my opinion, that would be counterproductive. The advantage of GPUs is that they have a large number of very simple GPU cores. Instead, just do a few separate CPU cores on the same die, or on a separate die. Or you could even have a forest of GPU cores with a few CPU cores interspersed among them - sort of like how modern FPGAs have logic tiles, memory tiles and CPU tiles spread out on it. I doubt it would be called a GPU at that point.

zozbot234 18 hours ago | parent | next [-]

GPU compute units are not that simple, the main difference with CPU is that they generally use a combination of wide SIMD and wide SMT to hide latency, as opposed to the power-intensive out-of-order processing used by CPU's. Performing tasks that can't take advantage of either SIMD or SMT on GPU compute units might be a bit wasteful.

Also you'd need to add extra hardware for various OS support functions (privilege levels, address space translation/MMU) that are currently missing from the GPU. But the idea is otherwise sound, you can think of the 'Mill' proposed CPU architecture as one variety of it.

goku12 15 hours ago | parent [-]

> GPU compute units are not that simple

Perhaps I should have phrased it differently. CPU and GPU cores are designed for different types of loads. The rest of your comment seems similar to what I was imagining.

Still, I don't think that enhancing the GPU cores with CPU capabilities (OOE, rings, MMU, etc from your examples) is the best idea. You may end up with the advantages of neither and the disadvantages of both. I was suggesting that you could instead have a few dedicated CPU cores distributed among the numerous GPU cores. Finding the right balance of GPU to CPU cores may be the key to achieving the best performance on such a system.

Den_VR 19 hours ago | parent | prev | next [-]

As I recall, Gartner made the outrageous claim that upwards of 70% of all computing will be “AI” in some number of years - nearly the end of cpu workloads.

deliciousturkey 16 hours ago | parent | next [-]

I'd say over 70% of all computing is already been non-CPU for years. If you look at your typical phone or laptop SoC, the CPU is only a small part. The GPU takes the majority of area, with other accelerators also taking significant space. Manufacturers would not spend that money on silicon, if it was not already used.

goku12 15 hours ago | parent | next [-]

> I'd say over 70% of all computing is already been non-CPU for years.

> If you look at your typical phone or laptop SoC, the CPU is only a small part.

Keep in mind that the die area doesn't always correspond to the throughput (average rate) of the computations done on it. That area may be allocated for a higher computational bandwidth (peak rate) and lower latency. Or in other words, get the results of a large number of computations faster, even if it means that the circuits idle for the rest of the cycles. I don't know the situation on mobile SoCs with regards to those quantities.

deliciousturkey 15 hours ago | parent [-]

This is true, and my example was a very rough metric. But the computation density per area is actually way, way higher on GPU's compared to CPU's. CPU's only spend a tiny fraction of their area doing actual computation.

swiftcoder 12 hours ago | parent | prev | next [-]

> If you look at your typical phone or laptop SoC, the CPU is only a small part

In mobile SoCs a good chunk of this is power efficiency. On a battery-powered device, there's always going to be a tradeoff to spend die area making something like 4K video playback more power efficient, versus general purpose compute

Desktop-focussed SKUs are more liable to spend a metric ton of die area on bigger caches close to your compute.

PunchyHamster 15 hours ago | parent | prev [-]

If going by raw operations done, if the given workload uses 3d rendering for UI that's probably true for computers/laptops. Watching YT video is essentially CPU pushing data between internet and GPU's video decoder, and to GPU-accelerated UI.

yetihehe 16 hours ago | parent | prev [-]

Looking at home computers, most of "computing" when counted as flops is done by gpus anyway, just to show more and more frames. Processors are only used to organise all that data to be crunched up by gpus. The rest is browsing webpages and running some word or excel several times a month.

k4rnaj1k 18 hours ago | parent | prev [-]

[dead]

sharpneli 15 hours ago | parent | prev | next [-]

Is there any need for that? Just have a few good CPUs there and you’re good to go.

As for how the HW looks like we already know. Look at Strix Halo as an example. We are just getting bigger and bigger integrated GPUs. Most of the flops on that chip is the GPU part.

amelius 15 hours ago | parent [-]

I still would like to see a general GPU back end for LLVM just for fun.

PunchyHamster 15 hours ago | parent | prev | next [-]

It would just make everything worse. Some (if anything, most) tasks are far less paralleliseable than typical GPU loads.

deliciousturkey 16 hours ago | parent | prev [-]

HN in general is quite clueless about topics like hardware, high performance computing, graphics, and AI performance. So you probably shouldn't care if you are downvoted, especially if you honestly know you are being correct.

Also, I'd say if you buy for example a Macbook with an M4 Pro chip, it is already is a big GPU attached to a small CPU.

philistine 15 hours ago | parent [-]

People on here tend to act as if 20% of all computers sold were laptops, when it’s the reverse.