02:17fdobridge: <gfxstrand> HdkR: It's pretty straightforward, honestly. There's a few oddities around per-vertex I/O in general but once you know how GS is supposed to work, it wasn't too bad.
02:34HdkR: gfxstrand: Something slightly better than a glorified compute shader writing to memory that needs to be allocated prior? :D
02:41fdobridge: <gfxstrand> Oh, yeah, it's all 100% automatic.
02:41HdkR: Which is so good
02:42HdkR: Downside, you have no visibility in to the throughput of the hardware. Upside, you have visibility that it isn't garbage due to writing to memory constantly
02:43HdkR: and the whole...how much to allocate problem
02:48fdobridge: <gfxstrand> Well, and it isn't really allocating... It is but it's a streaming allocation. It's not static in any sense.
02:49HdkR: Yea, allocating is a concern on the hardware that implements GS as a glorified compute shader
02:50HdkR: Like AGX and...Mali?
02:51fdobridge: <gfxstrand> Yeah, but when you have a hardware GPU scheduler and fast streaming space, everything goes way faster and easier.
02:51fdobridge: <gfxstrand> But, yeah, AGX and Mali do GS on hard mode.
02:52HdkR: Such a nice way for NVIDIA to implement it
02:57HdkR: Also helps that NVIDIA way overspeced their vertex processing so it never really is a bottleneck. Still shipping that half-rate vertex processing compared to Quadro even :D
03:01fdobridge: <gfxstrand> Intel and AMD are similar, though AMD is more work because of their weird combined shader thing.
03:02HdkR: The AMD NGG thing is neat
06:25fdobridge: <_maide> Oh, not sure how I didn't see that before, thanks.
07:14fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> Could NVK work on BSDs (like FreeBSD)? How would the new uAPI be implemented there? 😈
08:27fdobridge: <karolherbst🐧🦀> by copying the code
08:28fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> VM_BIND might be a problem though
09:14fdobridge: <karolherbst🐧🦀> yeah, but they don't have a choice
09:43fdobridge: <airlied> Has any bsd ported nouveau? They normally seem fine with proprietary driver
09:45fdobridge: <karolherbst🐧🦀> depends on the BSD
09:46fdobridge: <karolherbst🐧🦀> I think?
09:47fdobridge: <karolherbst🐧🦀> but occasionally there is this (always changing) BSD developer who informs us of their plans to write a driver from scratch, so uhhh.. it's complicated
10:54uis: What should be used(GEM or TTM) for GPU, that can only work with textures in VRAM?
14:58fdobridge: <gfxstrand> uis: TTM is just a bunch of helpers for implementing GEM that also takes care of a bunch of discreet memory problems for you.
15:01fdobridge: <gfxstrand> NVK may change that. We'll see.
15:01fdobridge: <gfxstrand> Not that I'm looking forward to having BSD bug reports...
15:02fdobridge: <gfxstrand> At least they're mostly on clang now.
15:04fdobridge: <gfxstrand> It's gonna be interesting to see who all complains when we have a hard Rust dependency... 🦀
17:55fdobridge: <karolherbst🐧🦀> I think they don't complain about rust in general, just if we bump the version req too often and too quickly 😄
17:55fdobridge: <karolherbst🐧🦀> uhm.. too high
19:19uis: I do. Or at least I complain about insanely huge compiler.
19:53karolherbst: well.. every compiler becomes big over time, the more performance and features they have, so that's not an argument
22:52fdobridge: <conan_kudo> as long as I don't have to deal with it, I don't care
22:53fdobridge: <conan_kudo> you want to write it all in rust, have fun 🙂
22:57fdobridge: <conan_kudo> my problems with rust come down to three things:
22:57fdobridge: <conan_kudo>
22:57fdobridge: <conan_kudo> * the community attitude toward people like me (distro folks)
22:57fdobridge: <conan_kudo> * compiler over specification (no gcc-rs yet)
22:57fdobridge: <conan_kudo> * projects that use rust nightly/unstable features
23:08fdobridge: <karolherbst🐧🦀> yeah... 1 is a real problem. 2 is just one in theory I don't think having gcc-rs will give us any benefits, rather the contrary: more pain for projects using rust, as there will be those "but it doesn't compile with gcc-rs" GNU dudes. Maybe they won't show up every time you rely on something rustc implements, but not gcc-rs, maybe they will, but I'm very skeptical so far. 3. is something mesa absolutely shouldn't do anyway.