Posted Jun 28, 2012 18:16 UTC (Thu) by bustervill (subscriber, #85383)
In reply to: Quotes of the week by nix
Parent article: Quotes of the week
I don't know what do you mean. The radeon driver support is not nearly complete. Yes, most major features are there, but the performance is an endless void nobody has dived into yet. There is no TGSI compiler whatsoever. The developers are fiddling with LLVM for an OpenCL support and people are wondering if reusing LLVM as TGSI compiler will be worth it. That of course will mean _another_ translation of the IR - from TGSI to LLVM IR. Also, LLVM is slooow when it comes to JIT. It's optimization passes are effective, but expensive. It cannot be used to JIT something that relies on low latency as a 3D driver.
TGSI compiler is one of the projects that has to be explicitly funded in order to launch. Until then, there will only be the interpreter delivering sub-par performance and maybe (just maybe) a (also slow) LLVM integration side project.
Posted Jun 29, 2012 7:09 UTC (Fri) by daenzer (✭ supporter ✭, #7050)
[Link]
> The developers are fiddling with LLVM for an OpenCL support and people are wondering if reusing LLVM as TGSI compiler will be worth it.
No need to wonder anymore, just build Mesa with --enable-r600-llvm-compiler. It seems to be more or less on par with the non-LLVM TGSI translator in general already.
> That of course will mean _another_ translation of the IR - from TGSI to LLVM IR.
Initially, sure. Not sure it's that much of a problem, and it doesn't have to stay that way forever.
> Also, LLVM is slooow when it comes to JIT. It's optimization passes are effective, but expensive. It cannot be used to JIT something that relies on low latency as a 3D driver.
Again, not sure it's as bad as you make it, and if it is, there's many possibilities to address that.
> TGSI compiler is one of the projects that has to be explicitly funded in order to launch.
Tom Stellard's OpenCL / LLVM compiler work is funded by AMD. But as you call what we're doing 'fiddling', maybe you can volunteer to show us how it's done? Please post to the mesa-dev mailing list. :)