SwordOfMyBone
The math itself maps to a higher abstraction when it comes to compilers. Focusing more on parsing, grammars and automata theory. CE courses tend to go to a lower level. I enjoy both sides and can see what you're trying to explain. What I got out of university was mostly the feeling that the courses could never go in depth due to the amount of detail and the abstractions that exist. I don't think a CE course would have went to enough depth to cover everything anyways (each course is still just in the realm of 100 hours). Because both the layers on top (Algorithms and computation theory) and the bottom (hardware) both have so much information that it can be daunting to try to learn all of it.
I do agree that it might be a pain point for some people who don't enjoy that part of CS. I'm curious how you came to regret it this much?
Also like compilers, and most compiler engineers are CS grads. That's my dream job!
From my simple understanding of it. TBDR GPUs extract performance by tiling and binning primitives and handing that out for rasterization. The multiple passes allow it to work on both at the same time? Kinda like how a CPU pipelines stuff? I thought GPGPU workloads means that it skips the rasterization stage? So what's the problem with treating it like an IMR.