02:04fdobridge: <clangcat> I mean you could try again this year.
02:49fdobridge: <karolherbst🐧🦀> yeah.. I guess so
13:15fdobridge: <konstantinseurer> This triangle was brought to you by NVK's first TLAS:
13:15fdobridge: <konstantinseurer> https://cdn.discordapp.com/attachments/1034184951790305330/1172524927224664095/result.ppm?ex=6560a1ef&is=654e2cef&hm=8e618af447d749217961be02e2eff0360ae116aac3f280c499ecab6628a17f10&
13:15fdobridge: <konstantinseurer> cmon discord
13:16fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> No .ppm support
13:16fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> https://cdn.discordapp.com/attachments/1034184951790305330/1172525302451277884/Screenshot_20231110_151632.png?ex=6560a248&is=654e2d48&hm=517df32d331f764d650ee777552455916cfa2e8cf6ef9149badd04b6ec6bf7d8&
13:17fdobridge: <konstantinseurer> amazing
13:18fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> What does TLAS mean?
13:19fdobridge: <konstantinseurer> Top level acceleration structure (ray tracing)
13:21fdobridge: <rhed0x> :oooo
13:21fdobridge: <rhed0x> i need more details 🐸
13:22fdobridge: <rhed0x> are you running the RADV software RT code with NVK rn?
13:23fdobridge: <konstantinseurer> Nope, this is hardware RT by the prop driver with a TLAS built by NVK injected
13:23fdobridge: <pac85> Oh wow did you re the format?
13:23fdobridge: <rhed0x> and how did you inject it?
13:24fdobridge: <rhed0x> i guess you could alias a TLAS with a buffer and just write the buffer
13:24fdobridge: <rhed0x> i guess you could alias a TLAS with a buffer and just write the buffer? (edited)
13:24fdobridge: <konstantinseurer> Mapping the memory backing the acceleration structure
13:24fdobridge: <rhed0x> didnt know you were allowed to put acceleration structures in host visible memory
13:25fdobridge: <pac85> So how is the nv bvh structured?
13:25fdobridge: <konstantinseurer> It works 🤷♂️
13:27fdobridge: <konstantinseurer> Internal nodes can have up to 12 children, their bounds are encoded using a 8-bit grid and there is some information about child offsets, the grid, ...
13:27fdobridge: <konstantinseurer> Triangle nodes can contain up to 5(?) triangles which are compressed by sharing bits with v0
13:28fdobridge: <pac85> Oh wow
13:28fdobridge: <konstantinseurer> https://gitlab.freedesktop.org/KonstantinSeurer/bvhre/-/blob/main/source/nvk/nvk_bvh.h?ref_type=heads
13:28fdobridge: <pac85> Thanks!
13:28fdobridge: <pac85> Very interesting
13:29fdobridge: <konstantinseurer> Ignore nvk_bvh_header, it's just data specific to the prop driver which can be cleared for the most part
13:30fdobridge: <pac85> What does the 8bit grid store?
13:31fdobridge: <pac85> This is way more sophisticated than amd lol
13:31fdobridge: <konstantinseurer> Child node AABBs
13:31fdobridge: <konstantinseurer> yes
13:31fdobridge: <rhed0x> not entirely surprising, is it? 🐸
13:31fdobridge: <pac85> I mean it doesn't take much to be more sophisticated than amd ol
13:40fdobridge: <marysaka> I got on a rabbit hole on envyhooks again.. turns out the dumper was not working on gen before Volta...
13:41fdobridge: <marysaka> @konstantinseurer did you needed to parse any MME macros for your researches?
13:41fdobridge: <mohamexiety> oooh wow this is amazing
13:42fdobridge: <marysaka> I think the dumper on that side is a bit wrong 😅
13:46fdobridge: <mohamexiety> I had wanted to work on RT when we got to it so this is exciting
13:47fdobridge: <konstantinseurer> Not yet, but I will try to make sure that I won‘t miss any magic hardware features
13:48fdobridge: <marysaka> I had a feeling that RT was calling a lot of macros when I looked that a bit during XDC
13:49fdobridge: <pac85> I wonder what kind of traces you get from the proprietary driver
13:49fdobridge: <pac85> Is it like cmdbuf+the macros?
13:51fdobridge: <marysaka> if you talk about envyhooks, we dump cmdbuf + extract the macro upload from the cmdbuf
13:52fdobridge: <pac85> Uhm I swe
13:53fdobridge: <marysaka> because the FIFO is mapped in userland I catch kickoff in a segfault handler, dump and resume execution
13:53fdobridge: <pac85> Uhm lol
13:53fdobridge: <marysaka> it's a mess but it works ™️
13:54fdobridge: <pac85> They have a fifo allocated per process I presume
13:54fdobridge: <pac85> Which the firmware schedules on some real underlying fifo?
13:54fdobridge: <marysaka> fifo per channels*
13:55fdobridge: <marysaka> not sure how a channel is allocated on the hardware side tbh
13:56fdobridge: <pac85> Mmm
13:57fdobridge: <marysaka> It's also quite a mess because on Volta+ the actual GPFIFO channel is mapped at a non page aligned offset :vReiAgony:
13:57fdobridge: <pac85> So anyway I guess the next step would be figuring out the shader side of rt
13:57fdobridge: <marysaka> (For before it's just in its own mapping clean and nice)
13:58fdobridge: <pac85> Yeah you talked to me about that at xdc lol
13:58fdobridge: <pac85> Have you looked at a shader that does day queries?
13:59fdobridge: <marysaka> not really, when I saw the amount of macros, I just switch back to mesh shader
13:59fdobridge: <pac85> Lol fair enough
14:00fdobridge: <pac85> But that might have been rt pipeline or bvh building related maybe?
14:22fdobridge: <marysaka> not really, when I saw the amount of macros, I just switched back to mesh shader (edited)
14:42fdobridge: <marysaka> Okay fixed Maxwell / Pascal support for envyhooks
14:42fdobridge: <marysaka> and hopefully macro dumping
14:44fdobridge: <marysaka> On another subject, the new VM_BIND ioctls don't work on tegra, the fence get signaled too early
14:44fdobridge: <bylaws> Xavier?
14:44fdobridge: <marysaka> T210
14:45fdobridge: <marysaka> There is nothing at the moment that handle syncpoints so I'm pretty sure it's related
14:45fdobridge: <marysaka> I also do believe that this doesn't show on the old GEM way by luck
14:47fdobridge: <bylaws> Ah I see
15:54fdobridge: <gfxstrand> Okay, time to figure out Maxwell input interpolation. 🙃
16:23fdobridge: <Dj-Death> How much reverse do you have to do?
16:29fdobridge: <gfxstrand> Not much
16:29fdobridge: <gfxstrand> Just copy+paste mostly
16:29fdobridge: <gfxstrand> At least for the first pass
16:29fdobridge: <gfxstrand> Passing all the CTS tests might require more
17:28fdobridge: <karolherbst🐧🦀> we should update our evoc project ideas 😄
17:28fdobridge: <karolherbst🐧🦀> somebody wants to work on codegen
17:36fdobridge: <![NVK Whacker] Echo (she) 🇱🇹> Feel free to roast this: https://aur.archlinux.org/packages/lib32-vulkan-nouveau-git
19:24fdobridge: <airlied> Might be worth returning ENOSYS for those ioctls on Tegra until someone cares
19:27fdobridge: <gfxstrand> ```
19:27fdobridge: <gfxstrand> ./deqp-vk -n dEQP-VK.pipeline.monolithic.sampler.*
19:27fdobridge: <gfxstrand> ...
19:27fdobridge: <gfxstrand> Test run totals:
19:27fdobridge: <gfxstrand> Passed: 39454/91280 (43.2%)
19:27fdobridge: <gfxstrand> Failed: 0/91280 (0.0%)
19:27fdobridge: <gfxstrand> Not supported: 51826/91280 (56.8%)
19:28fdobridge: <gfxstrand> Warnings: 0/91280 (0.0%)
19:28fdobridge: <gfxstrand> Waived: 0/91280 (0.0%)
19:28fdobridge: <gfxstrand> ```
19:29fdobridge: <marysaka> Well I kind of do care 😅
19:30fdobridge: <marysaka> I think stuffs should be changed to interact with host1x apis from tegra driver
19:31fdobridge: <marysaka> not quite sure how that would be done but well
19:31fdobridge: <marysaka> I'm quite certain than even GL is broken atm
19:51fdobridge: <gfxstrand> And... now we fix all the Ampere regressions in the nv50 branch. Woo
19:51fdobridge: <airlied> Probably should ask the Tegra maintainer for more info, no idea if the syncpts stuff interacts with 3d stuff
19:53fdobridge: <marysaka> From my digging nvgpu does all sync with syncpoints
20:16fdobridge: <gfxstrand> Lots of noise from LOP2 and my FS input reworks but I think it's pretty good now. I'll wait for this run to finish and then triage.
20:46fdobridge: <gfxstrand> @airlied FWIW, my 3060 seems pretty stable so far. Do you want me to try my other 2060 as a datapoint?
21:10fdobridge: <airlied> Would be useful alright to see if all Turing or just that one
21:13fdobridge: <gfxstrand> Okay. My ampere run has another 30 min to go and then I'll pull my other Turing out of my blob box
21:31fdobridge: <airlied> Does ampere need some work to get conformance?
21:33fdobridge: <gfxstrand> It's looking pretty good with this run. About like Turing.
21:33fdobridge: <gfxstrand> Multi-threaded runs are never quite clean but it seems in reasonably good shape.
21:33fdobridge: <gfxstrand> Once NAK lands next week, I'll try to merge in a few more things and do an Ampere submission.
21:48fdobridge: <gfxstrand> `Pass: 411770, Fail: 13, Crash: 9, Warn: 4, Skip: 3577070, Flake: 2, Duration: 1:02:26`
21:48fdobridge: <airlied> Is that a nak run?
21:48fdobridge: <gfxstrand> Of course! Codegen fails like 250 tests. 😂
21:49fdobridge: <gfxstrand> And that's with `NV50_OPTIMIZE=1` so it doesn't break geometry shaders
21:50fdobridge: <gfxstrand> I'm gonna throw 36 threads at it just to see what happens. 😅
21:51fdobridge: <gfxstrand> Uh oh... It didn't like that.
21:58fdobridge: <gfxstrand> Yeah, I think this GPU just doesn't like having 36 live contexts
21:58fdobridge: <gfxstrand> That or it's OOMing
21:58fdobridge: <gfxstrand> The good news is that the kernel and firmware seem to be surviving
21:59fdobridge: <gfxstrand> Just not my tests. 😂
22:02fdobridge: <gfxstrand> Oops! There goes my kernel. 😂
22:03fdobridge: <gfxstrand> Looks like someone isn't checking an errptr
22:03fdobridge: <clangcat> Kernel panic?
22:04fdobridge: <gfxstrand> ```
22:04fdobridge: <gfxstrand> [ 469.962211] BUG: kernel NULL pointer dereference, address: 0000000000000014
22:04fdobridge: <gfxstrand> [ 469.962221] #PF: supervisor read access in kernel mode
22:04fdobridge: <gfxstrand> [ 469.962226] #PF: error_code(0x0000) - not-present page
22:04fdobridge: <gfxstrand> ```
22:05fdobridge: <clangcat> Yea C is great. Just people find checking pointers hard.
22:06fdobridge: <airlied> Maybe file an issue with the backtrace
22:07fdobridge: <gfxstrand> @airlied where?
22:08fdobridge: <airlied> https://gitlab.freedesktop.org/drm/nouveau/-/issues/
22:16fdobridge: <gfxstrand> Filed
22:17fdobridge: <gfxstrand> https://gitlab.freedesktop.org/drm/nouveau/-/issues/274https://gitlab.freedesktop.org/drm/nouveau/-/issues/274
22:38fdobridge: <airlied> dakr: ^
23:50fdobridge: <gfxstrand> Yeah, so... plugged in my Founder's Edition 2060 and... GSP doesn't even come up on it.
23:50fdobridge: <gfxstrand> Piles of warnings in dmesg