Hacker News new | ask | show | jobs
by radarsat1 825 days ago
Doesn't the CPU/GPU bottleneck which is already assumed to be slow actually provide the perfect opportunity for abstraction over a network protocol? Sending "what to draw" and "how" (shaders) over the wire infrequently and issuing cheap draw commands on demand? I think GPUs provide a better situation for a network first model than was available when X was designed.
2 comments

Only if everyone agrees on a central rendering model & feature set, which simply isn't the case. 2D rendering is not a solved problem, there are many different takes on it. Insisting all GUIs on a given device use a single system is simply not realistic, which is why nobody actually uses any of the X rendering commands other than "draw pixmap" (aka, just be a dumb compositor)
You can send draw commands without making that the fundamental underlying operating model.

GPUs are highly complex and performance under generic wrappers.

No, he is correct. The GPU on the other side of the PCI is a remote computer.
Huge difference over operating over a PCI bus with gargantuan bandwidth and near zero latency, and working over random network connections.
Certainly a huge difference, but if you want good performance you need to treat this as a remote buffer management problem in both cases.
Sorry, but I can’t take the suggestion that the PCI bus and the internet should be treated the same seriously. You’re telling 4 or 5 orders of magnitude difference. Maybe more on some specs.

It’s like saying you should use the same file access algorithms for a RAM disk and punch cards. No you shouldn’t!

You need to compare to memory on the main board.