Gluon: a GPU programming language based on the same compiler stack as Triton

60 pointsposted 8 hours ago
by matt_d

17 Comments

lukax

7 hours ago

Is this Triton's reply to NVIDIA's tilus[1]. Tilus is suposed to be lower level (e.g. you have control over registers). NVIDIA really does not want the CUDA ecosystem to move to Triton as Triton also supports AMD and other accelerators. So with Gluon you get access to lower level features and you can stay within Triton ecosystem.

[1] https://github.com/NVIDIA/tilus

reasonableklout

6 hours ago

It sounds like they share that goal. Gluon is a thing because the Triton team realized over the last few months that Blackwell is a significant departure from the Hopper, and achieving >80% SoL kernels is becoming intractable as the triton middle-end simply can't keep up.

Some more info in this issue: https://github.com/triton-lang/triton/issues/7392

saagarjha

4 hours ago

I believe it’s the other way around; Gluon exposes the primitives Triton was built on top of.

xcodevn

32 minutes ago

Interesting, i can see this being very similar to Nvidia's CUTE DSL. This hints that we are converging to a (local) optimal design for Python-based DSL kernel programming.

ericdotlee

5 hours ago

Why is zog so popular these days? Seems really cool but I have yet to get the buzz / learn it.

Is there a big reason why Triton is considered a "failure"?

ronsor

7 hours ago

The fact that the "language" is still Python code which has to be traced in some way is a bit off-putting. It feels a bit hacky. I'd rather a separate compiler, honestly.

JonChesterfield

6 hours ago

Mojo for python syntax without the ast walking decorator, cuda for c++ syntax over controlling the machine, ah hoc code generators writing mlir for data driven parametric approaches. The design space is filling out over time.

pizlonator

4 hours ago

The fact that these are all add on syntaxes is strange. I have my ideas about why (like you want to write code that cooperates with host code).

Do any of y’all have clear ideas about why it is that way? Why not have a really great bespoke language?

saagarjha

4 hours ago

Hard to beat trifecta of familiar language, same source files and toolchain, JIT compiled

pizlonator

4 hours ago

That’s sort of what I assumed, yeah. And I think that makes sense.

But they end up adding super sophisticated concepts to the familiar language. Makes me wonder if the end result is actually better than having a bespoke language.

derbOac

7 hours ago

Yeah that struck me as odd. It's more like a Python library or something.

zer0zzz

4 hours ago

It’s a dsl not a library. The kernel launch parameters and the ast walk generate ir from the Python.

zer0zzz

5 hours ago

This is pretty common among these ml toolchain, and not a big deal. They use pythons ast lib and the function annotations to implement an ast walker and code generator. It works quite well.