15:54gfxstrand[d]: 🤡
15:57phomes_[d]: Palworld is currently broken for two reasons
15:57phomes_[d]: One I work around in https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36278
15:57phomes_[d]: The second is more interesting. With DXVK 2.7 Palworld now hits `src/nouveau/vulkan/nvk_descriptor_set.c:237: ssbo_desc: Assertion `addr_range.addr % NVK_MIN_SSBO_ALIGNMENT == 0' failed.`
15:57phomes_[d]: I have only seen it in Palworld so far. It is using unreal engine 5 though so maybe will affect other games as well
15:57gfxstrand[d]: Ugh... I really need to get back to fixing that. 😢
15:58phomes_[d]: In #DXVK they mention that on prop they work around this with VK_NV_raw_access_chains
15:58gfxstrand[d]: Yeah
15:58gfxstrand[d]: I need to look at that extension, too
15:58asuasuasu[d]: karolherbst: i can spare some time setting up stuff on my box if useful but i can't guarantee 100% uptime :P
15:58gfxstrand[d]: Or maybe mhenning or someone else compilery can
15:59karolherbst[d]: asuasuasu[d]: the server had pretty much 100% uptime before they moved the virtual server to new hardware 😄
15:59gfxstrand[d]: It's gonna be kind of annoying. It requires plumbing extra stuff all the way from the SPIR-V parser.
15:59phomes_[d]: I looked and it seems out of my league 🙂
15:59asuasuasu[d]: unfortunate
15:59karolherbst[d]: I'm sure they'll figure it out
16:44mhenning[d]: gfxstrand[d]: "back to fixing that" meaning continuing work on https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33613 ?
16:45mhenning[d]: SPV_NV_raw_access_chains looks doable after a quick first read
16:50mhenning[d]: mhh actually now I'm worrying it will interact badly with passes that want derefs. have to think about this
16:51gfxstrand[d]: mhenning[d]: Yeah
18:42sunrise_sky[d]: Hey guys. My good friend maatee90 is interested in starting to contribute to NVK. He is new to graphics drivers, but he's been working on game engines professionally for years, so he knows how GPUs work. Can someone give a bit of an introduction on how to start with NVK?
18:44maatee90[d]: sunrise_sky[d]: 👋 and thanks for the help 🙂
18:45sunrise_sky[d]: I think gfxstrand[d] and marysaka can help
18:47gfxstrand[d]: maatee90[d]: Hi and welcome! 💜
18:54maatee90[d]: gfxstrand[d]: Hi 🙂
18:54maatee90[d]: So my interests would be around
18:54maatee90[d]: 1.) best prectices to install my enironment for an efficient development (further from what is available in the public domain)
18:54maatee90[d]: and
18:57gfxstrand[d]: maatee90[d]: Basic build/install here: https://docs.mesa3d.org/install.html
18:58mhenning[d]: gfxstrand[d]: I'd recommend using the `meson devenv` instructions from that page
18:58gfxstrand[d]: For NVK, you'll want `-Dvulkan-drivers=nouveau -Dgallium-drivers=zink`
18:59mhenning[d]: I'd also suggest you set up https://crates.io/crates/deqp-runner and https://github.com/KhronosGroup/VK-GL-CTS so you can test your changes
19:00asuasuasu[d]: i started poking at mesa recently but i shifted to other things temporarily, and was starting to compile useful stuff for myself
19:01mhenning[d]: For the state of the driver, most things work but we're not at feature or performance parity with the proprietary driver yet
19:02mhenning[d]: an RTX 3000 series is a good machine to develop on
19:03asuasuasu[d]: <https://gist.github.com/asumagic/5522dac85c0d4b9007b51834b5b2d44a> very not complete and no nvk specific steps but i think it's a bit more helpful than scanning through docs to find how to at least run tests and understand the ci? (feedback appreciated)
19:03mhenning[d]: as for starter tasks, if you want to try something compiler-oriented, one option would be to implement uadd_carry natively in nak
19:03mhenning[d]: (just looking at easy things from my todo list)
19:05chikuwad[d]: wait mel where's your to-do list
19:05mhenning[d]: oh I just have a text file locally on my computer that I use for jotting down notes
19:05chikuwad[d]: ahh
19:06mhenning[d]: it contains a rather long todo list
19:06chikuwad[d]: not surprised 😅
19:10maatee90[d]: Thank you! I will get started on that (and give the feedback where applicable 😉 )
19:10maatee90[d]: mhenning[d] I might reach out for more insight on that actual task (or others) later.
19:11mhenning[d]: Sure! Feel free to ask questions here
19:13marysaka[d]: Maybe I should publish my collection of over-engineered scripts I have for mesa devenv and cts :aki_thonk:
19:14asuasuasu[d]: i think it would be helpful
19:14asuasuasu[d]: running the cts etc is not particularly obvious when you're new
19:14asuasuasu[d]: i mean, it's not super hard to find, but examples and all that are easy to find are nice
19:15asuasuasu[d]: alyssa had made a "driver survival guide" for asahi, which i actually found pretty useful to get an idea about some things, but um, she deleted it, so i assume it was kinda out of date for asahi or something
19:19mhenning[d]: yeah, the core mesa documentation could probably use some basic info on running cts
19:27asuasuasu[d]: if i do actually commit to mesa stuff on my free time (not short term as i have other things to take care of) i'll keep compiling info and maybe contribute docs back when i am confident enough not to sink more contributor time reviewing than i save :P
19:27marysaka[d]: asuasuasu[d]: <https://github.com/marysaka/mesa_tooling>
19:27marysaka[d]: <https://github.com/marysaka/cts_build_scripts>
19:27asuasuasu[d]: will write that down
19:28marysaka[d]: that's my setup I have on every boards/test bench around to dev (Fedora based setup)
19:28gfxstrand[d]: https://github.com/gfxstrand/linux-setup-scripts/tree/main/scripts/devel
19:28gfxstrand[d]: In case anyone is curious
19:28gfxstrand[d]: But also `meson devenv` should work
19:28marysaka[d]: and the cts_build_scripts are used to build and then push on my private forgejo to deploy everywhere ect
19:29chikuwad[d]: quick question re: maintenance8, when the spec says to `allow copies between depth/stencil and “matching” color attachments` I have to allow copies between depth/stencil and color images if their memory layouts and texel sizes match, right?
19:29marysaka[d]: the CTS is setup at /deqp-vk ect to follow mesa-ci and be able to reuse all defs around
19:32gfxstrand[d]: chikuwad[d]: Yes. So `S8` and `R8_UINT` for instance. Or `D32` and `R8G8B8A8_UNORM`
19:33nanokatze[d]: chikuwad[d]: > If srcSubresource.aspectMask is VK_IMAGE_ASPECT_COLOR_BIT and dstSubresource.aspectMask is VK_IMAGE_ASPECT_DEPTH_BIT or VK_IMAGE_ASPECT_STENCIL_BIT, then the VkFormat values of srcImage and dstImage must be compatible according to the list of compatible depth-stencil and color formats
19:33nanokatze[d]: https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html#formats-compatible-zs-color
19:33gfxstrand[d]: gfxstrand[d]: Which should already "just work (TM)"
19:33pendingchaos: https://gitlab.freedesktop.org/pendingchaos/mesa-dev-tools is mine I guess, though I have a rust version that's unpushed that I consider to be a bit nicer
19:33chikuwad[d]: nanokatze[d]: I really need to get better at finding the relevant bits
19:35pendingchaos: probably the most over-engineered build script out of all these
19:41mhenning[d]: chikuwad[d]: The spec is only 6000 pages as a pdf. Haven't memorized it yet? 😛
19:41mhenning[d]: (I struggle to find things in the spec too)
19:42orowith2os[d]: If everybody memorized 20 pages, we only need 30 people to recite the entire spec :corro:
19:42chikuwad[d]: oro where did you learn math
19:44maatee90[d]: Who can learn 20 pages, is capable of leaning 200 pages 😄
19:49airlied[d]: someone just stream reading and reacting to the vulkan spec, I'm sure you'd get all the youtube money 😛
19:51chikuwad[d]: https://tenor.com/view/looney-tunes-sylvester-the-cat-money-cash-cash-money-gif-19203991
19:56orowith2os[d]: chikuwad[d]: I didn't :ferrisOwo:
19:58zmike[d]: airlied[d]: if I do this do I still have to blog
19:58airlied[d]: just one blog, explaining where you went 🙂
19:59airlied[d]: actually I'd probably listen to an audiobook of the vulkan spec, since I'm mostly using audiobooks to go back to sleep
19:59zmike[d]: a dramatic reading of the vulkan spec by zmike
19:59zmike[d]: coming soon to audible
19:59airlied[d]: I'd aim for more lofi reading 😛
20:00zmike[d]: the synchronization section would be dramatic and the rest would be lofi
20:00chikuwad[d]: vulkan spec ASMR
20:00chikuwad[d]: coming to a podcast app near you
20:01mohamexiety[d]: going to wait for the director’s cut which has commentary on the spec and opinions :HyperKek:
20:01orowith2os[d]: How much am I getting paid per page
20:01zmike[d]: commentary would be khronos-only
20:01mohamexiety[d]: orowith2os[d]: _Payment? Think of the exposure!_
20:01zmike[d]: and come with parental advisory
20:01orowith2os[d]: Only accessible to Khronos Foundation members?
20:06orowith2os[d]: Imagine if you made it all a subscription service
20:06orowith2os[d]: 2-week free trial
20:06orowith2os[d]: Then 14.99 a month
20:07orowith2os[d]: Except, hear me out: it defaults to annually.
20:12airlied[d]: and to cancel it you have to ring zmike
20:12mohamexiety[d]: _And_ also you have to pay a cancellation fee if you cancel
20:13mohamexiety[d]: (Equal to the worth of the number of months remaining of course)
20:14zmike[d]: cancelation is automatic for blog readers
20:18marysaka[d]: Does anyone have issues with NVK not being able to init on 6.16?
20:18marysaka[d]: It also happens on drm-misc-next for me (testing on Ada)
20:18marysaka[d]: the GSP is init properly I get display just NVK just doesn't show up
20:23mhenning[d]: It works for me on 6.16-rc7, rtx 3060
20:23marysaka[d]: I can swap to an Ampere card to check later...
20:26mohamexiety[d]: yeah 6.16-rc7 doesnt work on my Ada either. works on 6.16-rc1 tho
20:27mohamexiety[d]: but also my Ada is a bit cursed so I am not sure what's to blame https://discord.com/channels/1033216351990456371/1034184951790305330/1382761134448312404
20:32x512[m]: gfxstrand[d]: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36298
20:34mhenning[d]: x512: Have you tested that with cts?
20:35x512[m]: No.
20:54gfxstrand[d]: marysaka[d]: Someone mentioned that in a bug report today
20:56sunrise_sky[d]: What is the kernel driver situation with NVK these days? I know Nova is still being developed, does NVK rely on that or not yet?
21:01mhenning[d]: no, nova isn't ready yet. nvk uses the nouveau kernel module right now
21:01gfxstrand[d]: But we do require the new kernel API which landed a couple years ago
21:19airlied[d]: there was a regression in rc7, it's getting reverted
21:24mohamexiety[d]: Phew
21:25mohamexiety[d]: I thought it was my GPU being weird again so this is a relief
21:31gfxstrand[d]: I should probably pull whatever version has Blackwell upstream. I'm still on some enabling branch from 4 months ago.
21:39mohamexiety[d]: Any 6.16 rc (except 7). I have been on rc1 for a while due to that