11:12RSpliet: nvuser: yep
17:36fdobridge: <gouz> Descriptor indexing seems to be going well!
17:36fdobridge: <gouz> Baseline: Pass: 298789, Fail: 2105, Crash: 272, Warn: 4
17:37fdobridge: <gouz> Descriptor indexing: Pass: 309452, Fail: 11, Crash: 1, UnexpectedPass: 4, ExpectedFail: 2370, Warn: 4
17:37fdobridge: <gouz> Descriptor indexing seems to be going well!
17:37fdobridge: <gouz> Baseline run: Pass: 298789, Fail: 2105, Crash: 272, Warn: 4
17:37fdobridge: <gouz> Descriptor indexing run: Pass: 309452, Fail: 11, Crash: 1, UnexpectedPass: 4, ExpectedFail: 2370, Warn: 4 (edited)
17:39fdobridge: <gouz> I am still having some issues with nir_opt_non_uniform_access pass though..
17:41fdobridge: <gouz> I do not know if we need the non uniform access lowering at all.
18:50fdobridge: <nanokatze> you can just not use it
18:50fdobridge: <nanokatze> you can just not use it for now (edited)
18:50fdobridge: <nanokatze> you'll maybe want it for bindless ubos in the future
18:54fdobridge: <nanokatze> which issues do you have though?
18:54fdobridge: <nanokatze> which issues did you have with it? (edited)
18:55fdobridge: <gouz> Why do bindless ubos need that?
18:55fdobridge: <nanokatze> if/when bindless ubos are gonna be lowered to ucld uM, cx[uN][...] thing, ubo descriptor (uN here) is a uniform register
18:56fdobridge: <nanokatze> it may not make sense to lower non-uniform bindless ubo to bindless ucld though but rather to just global load thing like it is now
18:56fdobridge: <nanokatze> it may not make sense to lower non-uniform bindless ubo to bindless ucld though but rather to just global load thing like it is now iirc (edited)
18:56fdobridge: <gouz> Ah, so these ubos need to be lowered then
18:57fdobridge: <nanokatze> you can also just try lowering everything 🐸
18:57fdobridge: <nanokatze> as in all non-uniform accesses
18:57fdobridge: <nanokatze> can't make things incorrect, only slower
18:57fdobridge: <gouz> Because as it is now (global), all ubo tests (including descriptor indexed) pass
18:57fdobridge: <gouz> hahah yeah
19:00fdobridge: <gouz> So does nir_opt_non_uniform_access pass require a nir_lower_non_uniform_access pass first?
19:00fdobridge: <nanokatze> no
19:00fdobridge: <nanokatze> you can check radv or anv to see how those drivers use it
19:01fdobridge: <nanokatze> nir_opt_non_uniform_access just tries to remove ACCESS_NON_UNIFORM or respective texture and sampler non-uniform things from instructions
19:19fdobridge: <gouz> Using them both for all descriptor types seems to work ok,
19:19fdobridge: <gouz> if i use only the opt pass i need to also use nir_has_non_uniform_access, or else i get assertions
19:20fdobridge: <gouz> But nir_has_non_uniform_access takes as an argument the access types i want to lower
19:21fdobridge: <gouz> Using them both for all descriptor access types seems to work ok,
19:21fdobridge: <gouz> if i use only the opt pass i need to also use nir_has_non_uniform_access, or else i get assertions (edited)
19:21fdobridge: <gouz> Using them both for all descriptor access types seems to work ok.
19:21fdobridge: <gouz> If i use only the opt pass, i need to also use nir_has_non_uniform_access, or else i get assertions (edited)
19:33fdobridge: <airlied> @Mr Fall🐧 did you get the mme register setting for nvk going at all?
19:37fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> Do you know why `fail ttm_validate` could occur when running Vulkan stuff with GSP? 🐸
19:45fdobridge: <nanokatze> could you paste those here?
19:46fdobridge: <nanokatze> you shouldn't be getting any assertions
19:46fdobridge: <nanokatze> something is wrong
19:48fdobridge: <nanokatze> nir_opt_non_uniform_access runs nir_divergence_analysis which needs shader to be in LCSSA form
19:48fdobridge: <nanokatze> nvm
19:53fdobridge: <gouz> If i do not check first like this:
19:53fdobridge: <gouz> if (nir_has_non_uniform_access(nir, lower_non_uniform_access_types)) {
19:53fdobridge: <gouz> NIR_PASS(_, nir, nir_opt_non_uniform_access);
19:53fdobridge: <gouz> }
19:53fdobridge: <gouz> i get:
19:53fdobridge: <gouz> ../src/compiler/nir/nir_from_ssa.c:635: emit_copy: Assertion `!nir_src_is_divergent(src) || nir_src_is_divergent(dest_src)'
19:53fdobridge: <gouz> on robustness.txt tests
19:53fdobridge: <gouz> If i do not check first like this:
19:53fdobridge: <gouz> if (nir_has_non_uniform_access(nir, lower_non_uniform_access_types)) {
19:53fdobridge: <gouz> NIR_PASS(_, nir, nir_opt_non_uniform_access);
19:53fdobridge: <gouz> }
19:53fdobridge: <gouz> i get:
19:53fdobridge: <gouz> ../src/compiler/nir/nir_from_ssa.c:635: emit_copy: Assertion `!nir_src_is_divergent(src) || nir_src_is_divergent(dest_src)'
19:53fdobridge: <gouz> on robustness tests (edited)
19:53fdobridge: <nanokatze> something seems broken
19:54fdobridge: <nanokatze> hmm
19:57fdobridge: <nanokatze> yeah no idea what could be causing this
19:57fdobridge: <gouz> if i move the opt pass before the nvk_lower_descriptors pass, all seems ok
19:57fdobridge: <nanokatze> tbf it probably should be there 🐸
20:04fdobridge: <airlied> there were some races in nvk, not sure if they've all been fixed
20:07fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> I wonder if this is normal: `kernel: nouveau 0000:01:00.0: DRM: GART: 536870912 MiB`
20:08fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> I see that this happens without GSP as well (but that size is definitely higher than my RAM amount)
20:09fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> This is definitely not normal though 🤔
20:18fdobridge: <karolherbst🐧🦀> we report what is mapable