Live data from Hacker News

Triton: Open-Source GPU Programming for Neural Networks

openai.com

81–90 of 116 posts

Re: Triton: Open-Source GPU Programming for Neural Networks

#81
post #74
post #5

Folks might find the author’s research paper [1] while at Harvard more informative. This is a great high-level description, but if you want more detail, I recommend the paper. [1] https://dl.acm.org/doi/abs/10.1145/3315508.3329973

That's http://www.eecs.harvard.edu/~htk/publication/2019-mapl-tille... for those of us outside the paywall

Huh, I thought the ACM DL was open "now" during the pandemic. Apologies!

Re: Triton: Open-Source GPU Programming for Neural Networks

#82

So the code looks (apart from pointers) similiar to numba which feels much closer to numpy/pytorch high level code. Are there huge advantages in the triton model compared to numba that I don't see? Or is there a big performance gap? For me numba was always the easiest way to get some new idea running on cuda, and most of the time it was fast enough.. Did anybody find performance comparison between numba and triton?

Unlike Numba, Triton operators operate on blocks with explicit load and store of blocks. This is what enables analysis to automate coalescing, shared memory management, etc.

I guess Triton is not for you if Numba is fast enough.

Re: Triton: Open-Source GPU Programming for Neural Networks

#83

Earlier quoted context omitted.

I believe this is more of an optimization layer to be utilized by libraries like Tensorflow and JAX. More of a simplification of the interaction with traditional CUDA instructions. I imagine these libraries and possibly some users would implement libraries on top of this language and reap some of the optimization benefit without having to maintain low-level CUDA specific code.

Im curious how it would compare to Halide Lang. They both seem to be targetting the same problem.

https://triton-lang.org/programming-guide/chapter-2/related-... has comparison with Halide, which is categorized as "Scheduling Languages" there.

Re: Triton: Open-Source GPU Programming for Neural Networks

#84
post #71

Earlier quoted context omitted.

AMD's ROCm 4.0 now supports cooperative groups, which is probably one of the last major holdouts for CUDA compatibility. There's still the 64-wavefront (for AMD CDNA cards) instead of 32-wavefronts (for CUDA). But AMD even has 4x4 half-float matrix multiplication instructions in ROCm (for MI100, the only card that supports the matrix-multiplication / tensor instructions) --------- I think CUDA vs OpenCL is over. ROCm…

Two reasons also. Some of the fastest research supercomputers in the US have been nVIDIA based. Sitting at a national lab, it's laughable how much more support there is from nVIDIA. Getting a DGX box is easy - there is nothing comparable from AMD's side. And the less said about Intel it's better. Smart, motivated people I know have left Argonne recently because of the Aurora shitshow.

Can you comment more on what’s going on at Argonne related to Aurora?

Re: Triton: Open-Source GPU Programming for Neural Networks

#86

Earlier quoted context omitted.

The author commented on reddit about that ( https://www.reddit.com/r/MachineLearning/comments/otdpkx/n_i... ) > PS: The name Triton was coined in mid-2019 when I released my PhD paper on the subject ( http://www.eecs.harvard.edu/~htk/publication/2019-mapl-tille... ). I chose not to rename the project when the Triton inference server came out a year later since it's the only thing that ties my helpful PhD advisors to…

The author is unfortunately wrong. NVIDIA's Triton was referenced in marketing material as far back as 2018. https://developer.nvidia.com/blog/nvidia-serves-deep-learnin...

Confusingly similar: check

Same industry: check

Maybe the author should expect an incoming C&D. IIRC US is first-to-use, so NVIDIA would prevail?

Re: Triton: Open-Source GPU Programming for Neural Networks

#87
post #71

Earlier quoted context omitted.

Two reasons also. Some of the fastest research supercomputers in the US have been nVIDIA based. Sitting at a national lab, it's laughable how much more support there is from nVIDIA. Getting a DGX box is easy - there is nothing comparable from AMD's side. And the less said about Intel it's better. Smart, motivated people I know have left Argonne recently because of the Aurora shitshow.

E.g. Pavan lol

Balaji is legit. He is an ex Panda student and those guys know their stuff

Re: Triton: Open-Source GPU Programming for Neural Networks

#88
post #71

Earlier quoted context omitted.

Two reasons also. Some of the fastest research supercomputers in the US have been nVIDIA based. Sitting at a national lab, it's laughable how much more support there is from nVIDIA. Getting a DGX box is easy - there is nothing comparable from AMD's side. And the less said about Intel it's better. Smart, motivated people I know have left Argonne recently because of the Aurora shitshow.

Can you comment more on what’s going on at Argonne related to Aurora?

Aurora was supposed to be up and running in early 2018. It seems like that it won't be functional even in 2021. This is by the way, such an years long delay has never happened when it comes to US Leadership Computing Facilities.

Intel, last I heard has written off close to 300 million dollars on Aurora.

Re: Triton: Open-Source GPU Programming for Neural Networks

#89

Unfortunate name clash with NVIDIAs Triton Inference Server: https://developer.nvidia.com/nvidia-triton-inference-server

Also clashed with Triton[0], a demoscene group famous for its Crystal Dreams 2 demo, which featured zooming mandlebrot on 386 PC https://youtu.be/BLMUfBikxTY?t=182

[0]: https://en.wikipedia.org/wiki/Triton_(demogroup)

Re: Triton: Open-Source GPU Programming for Neural Networks

#90

This sounds like basically hand-holding for Python programmers to write simple NN-operations. I'm sure it's convenient and useful, but it's still glorified glue code.

No, this is a DSL that allows people who normally write CUDA, to do so with less lines of code, and end up with a faster kernel. By embedding it inside Python you don't need to write your own lexer/parser.
Post reply on HN