top | item 47055571

(no title)

ByThyGrace | 12 days ago

How feasible is it for this to target earlier AMD archs down to even GFX1010, the original RDNA series aka the poorest of GPU poor?

discuss

order

ZaneHam|12 days ago

Hey, I am actually working on making this compatible on earlier AMD's as well because I have an old gaming laptop with an RX5700m which is GFX10. I'm reading up on the ISA documentation to see where the differences are, and I'll have to adjust some binary encoding to get it to work.

I mean this with respect to the other person though please don't vibe code this if you want to contribute or keep the compiler for yourself. This isn't because I'm against using AI assistance when it makes sense it's because LLMs will really fail in this space. Theres's things in the specs you won't find until you try it and LLMs find it really hard to get things right when literal bits matter.

deeringc|11 days ago

I really like the minimal approach you've taken here - it's refreshing to see this built completely from the ground up and it's clearly readable and for me, very educational.

But help me understand something. BarraCuda does its own codegen and therefore has to implement its own optimisation layer? It's increbibly impressive to get "working" binaries, but will it ever become a "viable" alternative to nvidia's CUDA if it has to re-invent decades of optimisation techniques? Is there a performance comparison between the binaries produced by this compiler and the nvidia one? Is this something you working on as an interesting technical project to learn from and prove that this "can be done"? Or are you trying to create something that can make CUDA a realistic option on AMD GPUs?

woctordho|11 days ago

If it helps: I'm actively considering how to make LLMs more helpful in GPU programming. Recently I converted the RDNA 3.5 ISA manual from PDF to Markdown for LLM retrieval (because I have a Strix Halo). Notably, I converted every bitfield diagram to plain text table and manually checked its correctness. Everyone can comment there if they find a typo. I guess someone can also do it for RDNA 2 and other manuals.

[0] https://github.com/woct0rdho/rdna35-isa-markdown

monster_truck|12 days ago

Don't let anyone dissuade you, it's going to be annoying but it can be done. When diffusion was new and rocm was still a mess I was manually patching a lot to get a vii, 1030, then 1200 working well enough.

It's a LOT less bad than it used to be, amd deserves serious credit. Codex should be able to crush it once you get the env going