Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
mschuetz
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
61.
▲
by
mschuetz
3y ago
It's a great cover...what do you mean with "get away with"?
62.
▲
by
mschuetz
3y ago
Why would I blame NVIDIA? If it wasn't for them, we'd still only have needlessly cumbersome APIs and ecosystems. They did what Khronos always failed to do: They created something that is both easy, powerful and fast. Khronos alway
63.
▲
by
mschuetz
3y ago
Not happening. WGSL wants to support the lowest common denominator, so it'll always mainly be a 5-year old mobile-phone API. Also if you want to beat CUDA, you'll need some functionality that's completely missing in compute s
64.
▲
by
mschuetz
3y ago
Not just feature parity, but proper UX. Things need to just work, without spending hours or days to make them work.
65.
▲
by
mschuetz
3y ago
What's wrong with CUDA? I avoided it for years because it's proprietory but about one year ago I started using it because all the alternatives (OpenGL/Vulkan compute, OpenCL, WebGPU, ...) couldn't quite do what I wanted,
66.
▲
by
mschuetz
3y ago
It's used in one of the fastest sorting approaches - counting sort / binning - to compute the location of where to store the sorted/binned items. First you count the number of items per bin, then you use prefix-sums to comput
67.
▲
by
mschuetz
3y ago
"Turns out we can beat the hardware with triangles much bigger than expected, far past micropoly. We software rasterize any clusters whos triangles are less than 32 pixels long." - https://advances.realtimerendering.com
68.
▲
by
mschuetz
3y ago
Huh? It had other options longer than it had async/await. Async/await is a fairly recent addition. E.g. before fetch with async/await, there was XmlHTTPRequest with callbacks. It also had Web Workers as a means for parallel&a
69.
▲
by
mschuetz
3y ago
The standard rendering pipeline is still fairly fixed and mandates shaders for vertices and fragments. With software rasterization, there are no more vertex or fragment shader, only compute. And you don't use the hardware rasterization
70.
▲
by
mschuetz
3y ago
Nanite renders small triangles faster by avoiding the dedicated hardware and using compute, instead.
71.
▲
by
mschuetz
3y ago
You're missing the point. CUDA is easy but also powerful, and it shows there is no reason that other APIs need to be hard and cumbersome.
72.
▲
by
mschuetz
3y ago
Not really trivial if you have to support any input set of triangles and don't know much about them. Software rasterizion exploits things like localized chunks of triangles, but the hardware rasterizer does not know about that in advan
73.
▲
by
mschuetz
3y ago
It's the exact reason why I've avoided CUDA for years, but I hit a dead end with OpenGL and Vulkan, and CUDA happened to be a fantastic, easy and fast solution. Of course I don't want graphics programming to be NVIDIA-only, b
74.
▲
by
mschuetz
3y ago
Exactly. Things like that already work with a workaround: You can use Cuda-OpenGL interop to expose an OpenGL framebuffer in CUDA, then you can simply write into that framebuffer from your CUDA kernel, and afterwards you get back to OpenGL
75.
▲
by
mschuetz
3y ago
Yeah, but OpenGL doesn't get updates anymore. My timeline goes like: I needed pointers(and pointer casting) for my compute shaders so I checked the corresponding GLSL extension, which was only available in Vulkan so I tried switching f
76.
▲
by
mschuetz
3y ago
I meant the development/learning overhead. With Vulkan you can do incredible low-level optimizations to squeeze every last bit of performance out of your 3D application, but because you are basically mandated to do it that way, you hav
77.
▲
by
mschuetz
3y ago
Yes, sorry for the confusion. I'd just rather have an API where the common things are easy, and the super powerful low-level optimizations are optional.
78.
▲
by
mschuetz
3y ago
> Vulkan and OpenGL both already support mesh shaders, which is a compute-oriented alternative to the traditional rasterization pipeline. Mesh shaders are a step in the right direction, but they are still embedded in all that unnecessary
79.
▲
by
mschuetz
3y ago
I know it won't happen overnight, but since it's already possible to do software rasterization for small triangles faster than hardware, having a graphics API framework starts losing its purpose. After all, we want to have the det
80.
▲
by
mschuetz
3y ago
Part of Nanite is software rasterization by rendering triangles with 64 bit atomics. You can simply draw the closest fragment of a triangle to screen via atomicMin(framebuffer[pixelID], (depth << 32) | triangleData).
81.
▲
by
mschuetz
3y ago
Glad to see more support for OpenGL, but I really hope we'll soon move to a compute-only way of handling graphics. The overhead of vulkan is absolutely insane (and not warranted, in my opinion), and OpenGL is on its last legs. Things l
82.
▲
by
mschuetz
3y ago
I strongly disagree. Async/Await is one of the nicest, cleanest ways to deal with asynchronous tasks, and asynchronous tasks are everywhere. Loading data from disk without blocking and doing something once this is done -> async. Mem
83.
▲
by
mschuetz
3y ago
From an expert's standpoint, it's still quite unusable and complex.
84.
▲
by
mschuetz
3y ago
> It's an official Khronos standard I think that's the problem. Khronos isn't known for good UX, and being from Khronos is exactly the reason why I'm not even bothering to check it out. I want an alternative to CUDA,
85.
▲
by
mschuetz
3y ago
Many of the best papers appear an Arxiv first. In some fields, it is customary to put your preprint on Arxiv before/during the submission to the peer reviewed venue. Arxiv is vital for quickly developing research fields.
86.
▲
by
mschuetz
3y ago
Userbenchmark is fairly useless for CPU performance, though. Their results are often completely nonsensical.
87.
▲
by
mschuetz
3y ago
The issue with Vulkan is that it's so cumbersome, I just don't want to use it at all. Tried to switch, but went back to OpenGL. There isn't anything in Vulkan that warrants that insane amount of overhead. WebGPU is based on s
88.
▲
by
mschuetz
3y ago
Because browsers are by far the easiest, safest, and fastest way to distribute applications. Operating Systems still don't have any sort of meaningful sandboxing so downloading and executing binaries from any source is out of question.
89.
▲
by
mschuetz
3y ago
The problem is that GDPR doesn't go far enough. It should completely prohibit third party tracking without the possibility to agree to it. Third party cookies/tracking simply should not exist.
90.
▲
by
mschuetz
4y ago
One reason is that WebGL isn't a 2010s technology, but more of a 2005 technology (it doesn't even have compute shaders). WebGPU will finally bring the Web to the state of 2010.
More ›