top | item 47054034

(no title)

whizzter | 12 days ago

Not familiar with CUDA development, but doesn't CUDA support C++ ? Skipping Clang/LLVM and going "pure" C seems to be quite limiting in that case.

discuss

order

ZaneHam|12 days ago

Im parsing the features of c++ CUDA actually uses, not the full c++ spec as that would take a very large amount of time. The Compiler itself being written in c99 is just because that's how I write my C and is a separate thing.

tgtweak|11 days ago

What lift would be required to make a runtime-delayed compilation (like shader compilation in a game/emulator) and have this be the NVRTC component inside ZLUDA?

woctordho|12 days ago

I'm also wondering this. The compiler itself is written in C99, but looking from the tests, it can parse some C++ features such as templates.

hackyhacky|12 days ago

Honestly I'm not sure how good is LLVM's support for AMD GX11 machine code. It's a pretty niche backend. Even if it exists, it may not produce ideal output. And it's a huge dependency.

bri3d|12 days ago

Quite good, it’s first party supported by AMD (ROCm LLVM, with a lot upstreamed as well) where it’s fairly widely used in production.

This project is a super cool hobby/toy project but ZLUDA is the “right” drop in CUDA replacement for almost any practical use case.

woctordho|11 days ago

I'd say it's pretty good on supported GPUs (gfx 9 and 12). Things like hipcc and Triton all work on top of it. But on gfx 11 there is still a lot to optimize.

h4kunamata|12 days ago

Real developer never depended on AI to write good quality code, in fact, the amount of slope code flying left and right is due to LLM.

Open-source projects are being inundated with PR from AIs, not depending on them doesn't limit a project.

That project owner seems pretty knowledgeable of what is going on and keeping it free of dependencies is not an easy skill. Many developers would have written the code with tons of dependency and copy/paste from LLM. Some call the later coding :)

gsora|12 days ago

LLVM and LLM are not the same thing

brookman64k|12 days ago

LLVM (Low Level Virtual Machine) != LLM (Large Language Model)