05:45airlied: the drm intel ci topic needs a rebase onto rc1
07:02MrCooper: Venemo: ack, thanks for looking into it
07:05MoeIcenowy: tacokoneko: I cross-compile Mesa from x86-64 to riscv64/arm64, and I use two-pass compilation
07:05MoeIcenowy: one pass is a native build for getting a clc
07:05MoeIcenowy: another pass has the clc in PATH and -Dmesa-clc=system
07:12tacokoneko: MoeIcenowy: thank you so much, I will try that. i don't know why i didn't think of that before - I think i tried -Dmesa-clc=system and I still got stuck
07:52MoeIcenowy: (for not polluting the system, I used DESTDIR when installing the clc-donor mesa
08:50Venemo: MrCooper: of course, if you find more issues like that, please send them my way.
09:22jani: airlied: done
10:39tzimmermann: jani, hi! there's an edid patch that i'd like you to take a look at. see https://lore.kernel.org/dri-devel/20260831093020.494701-1-tzimmermann@suse.de/T/#m090de251cfee1d38f24f8121899360be632754d3 thanks
11:03jani: tzimmermann: I'd tagged it "todo" before you pinged me ;)
11:29tzimmermann: thanks a lot
16:55elibrokeit: dwfreed, jljusten, karolherbst: to be clear, distribution packagers can download and checksum the tarball themselves and provide it in $MESON_PACKAGE_CACHE_DIR and meson will pick it up from there too, if one needs additional ways to ensure it works offline.
16:57dwfreed: right
16:59elibrokeit: which reminds me... https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=92860b9146e02479dd67de74585f3d170f8c03e1
16:59elibrokeit: mattst88: (maybe we can rename these at last? :) )
17:02dwfreed: elibrokeit: it's only been 2 years! :D
17:03elibrokeit: in rust, 2 years is long enough for people to be born and then die of old age!
17:03dwfreed: lol
17:31jljusten: elibrokeit: Yes, distros can also download things off the internet and package them, no matter how difficult that is. Things work better when the dep is tagged and installs in a straightforward manner.
17:37mattst88: elibrokeit: find by me :)
17:38mattst88: yeah, I don't think what jljusten is asking for is unreasonable, and it looks like yiwei has made a tag?
17:38mattst88: https://gitlab.freedesktop.org/virgl/venus-protocol
17:38dwfreed: mattst88: the issue is the buildsystem doesn't actually install any files
17:39dwfreed: (note it's a header-only package)
17:41karolherbst: that's already fixed
17:41dwfreed: ah, good
17:42dwfreed: I have not looked since the discussion the other day
17:48karolherbst: do we have a shader pass somewhere that moves instructions from divergent into convergent dominating blocks?
17:52glehmann: amd and intel don't want that, so probably not
17:53karolherbst: annoying. I do want that sadly..
17:53karolherbst: not generally, but for memory addresses it would help us
18:23elibrokeit: jljusten: yeah but I have limited ways to ensure that it's available in distros :) whereas I can put on my hat as meson upstream and guarantee that at least offline checksummed builds work okay
18:30jljusten: elibrokeit: I guess with wraps we no longer have to worry about the dep actually being packaged in any distro. We should make sure the dependency is at least tagged, and strongly prefer it be installable in the standard manner.
18:31elibrokeit: yep, absolutely
18:55FireBurn: Does anyone have a displaylink device they wouldn't mind testing vino on?
19:03alyssa: glehmann: wait why not?
19:03alyssa: oh is this for the case of "if divergent { ugpr = .. }"
19:04alyssa: in that case yeah we don't want it
19:04glehmann: yes
19:04alyssa: yeah ok
19:08glehmann: I mean, nak could also implement control flow like aco, using only uniform jumps and predication
19:09glehmann: then the ugpr issue won't exist
19:10karolherbst: yeah.....
19:10karolherbst: we should implement predication as control flow...
19:11karolherbst: glehmann: so ACO never does any divergent jumps at all?
19:11karolherbst: hw limitation or just "saner model"?
19:11glehmann: hw limitation
19:11karolherbst: ahh..
19:12karolherbst: I do think we can write to UGPRs in non uniform control flow, just... it's complicated because that also changes RA
19:12karolherbst: mhhh
19:12karolherbst: yeah.. don't have a great idea...
19:54alyssa: you probably dont want to do the jay solution :P
20:01karolherbst: yeah... so far the thing I've seen that would help would be to move ldc_nv(const, const) into uniform control flow, and that's probably already 95% of the potential wins...
20:01alyssa: although I.. think the jay's solution is correct
20:01alyssa: if somewhat nonsensical =)
20:02karolherbst: there are many gaps we have...
20:02alyssa: would require heavy surgery on nak's RA and spiller
20:02alyssa: I think Kraid could do it
20:02karolherbst: yeah....
20:02alyssa: but arm doesn't have ugpr's
20:02karolherbst: I go for the easy solution now :)
20:02alyssa: so
20:02alyssa: lol
20:02karolherbst: it's really silly
20:02karolherbst: it's basically just load(iadd(u2u64(non_uniform), uniform_addr))
20:03karolherbst: but quite a lot
20:03karolherbst: and the uniform_addr is a trivial ubo pull almost always
20:04karolherbst: like.. I get it... reworking all of RA or even start a new compiler is the solution we often go for in our community, but I can also do this later 🙃
20:09airlied: karolherbst: I hacked up a horrible pass recently but it didn't help the thing, and I've no idea where I left it, but on radv if you have an if ladder and it does a store in each branch, the descriptor load is also duplicated in each branch
20:09karolherbst: oof
20:09airlied: so I was just like life the descriptor load speculatively because it's unlikely you hit the one branch it isn't needed
20:09airlied: lift
20:09karolherbst: yeah.. the problem I'm solving is a real one.. it's going to get rid of iadds and a unch of live values
20:10karolherbst: also reduces 64 bit GPRs to 32bit ones
20:10airlied: this ended up with a lot of address calcs inside flow control that had no need to be in there as well
20:10karolherbst: ahh...
20:10karolherbst: probably different bottleneck then
20:11airlied: but yeah some sort of speculative uniform hoisting seems useful
20:11karolherbst: I have a renderdoc and it's in a fragment shader that's the most expensive ones.. so my hope is I can measure whether it's helping or not :D
20:12karolherbst: that shader is a pure monster...
20:12karolherbst: you already know you are in for a good time when the nir variables look like this: https://gist.githubusercontent.com/karolherbst/16eb83aa4ed283370efb86d893763ecd/raw/9c839ce47efdaefc9c40616bbca1e57136a6c60d/gistfile1.txt
20:26karolherbst: okay.. now it's time to get disappointed :)
20:29karolherbst: okay.. it killed 2 instructions out of 13704, good job
20:30karolherbst: ohh right I can't use 64 bit ugprs in non uniform control flow for RA reasons
20:49Kayden: anholt: hi! :) could you please add @alyssa, @adrianb, and @calder to have access to shader-db-private? thank you!
21:00anholt: Kayden: done
21:03glehmann: anholt: can you reply here please? https://gitlab.freedesktop.org/mesa/mesa/-/work_items/16143
21:04Kayden: anholt: thank you! :)
21:48austriancoder: which debug tool makes use of VK_AMD_buffer_marker - I only found CrashDiagnosticLayer
22:32Ristovski: austriancoder: renderdoc as well afaik