00:00fdobridge_: <Tom^> il see what i can get running on nvk
00:00fdobridge_: <karolherbst🐧🦀> prolly way less, but would be good to be able to compare
00:01fdobridge_: <karolherbst🐧🦀> or maybe not..
00:01fdobridge_: <karolherbst🐧🦀> mhh
00:08fdobridge_: <airlied> I ran unigine on zink on nvk last week
00:09fdobridge_: <airlied> heaven ran i think, but was some misrendering unless I disabled one tickbox
00:09fdobridge_: <karolherbst🐧🦀> compared performance to gl?
00:13fdobridge_: <airlied> just eyeballing fps, but 20-30fps with nvc0 vs 50-60+ fps with zink/nvk
00:13fdobridge_: <karolherbst🐧🦀> interesting
00:13fdobridge_: <karolherbst🐧🦀> ~~guess we can torch nvc0 already~~
00:14fdobridge_: <airlied> ah I had to turn off ambient occlusion
00:15fdobridge_: <airlied> to get it to not misrender under zink/nvk
00:15fdobridge_: <airlied> I also think fullscreen mode didn't go great with zink
00:16fdobridge_: <karolherbst🐧🦀> I see...
00:20fdobridge_: <airlied> I'll run heaven bench mode now
00:27fdobridge_: <airlied> actually didn't come out vastly different with a full bench
00:28fdobridge_: <airlied> 25.9, 652, 13.5, 72.5
00:28fdobridge_: <airlied> 32.8, 827, 7.7, 69.4
00:28fdobridge_: <airlied> fps, score, min, max
00:29fdobridge_: <Tom^> hm havent tried zink, is it just an env var to do so?
00:30fdobridge_: <redsheep> I am working on building with 26615 and 26622 to test heaven with and without zink right now
00:30fdobridge_: <redsheep> All you need is MESA_LOADER_DRIVER_OVERRIDE=zink, right?
00:31fdobridge_: <airlied> yes that and the vulkan ICD pointed to the right place
00:33fdobridge_: <Tom^> MESA_LOADER_DRIVER_OVERRIDE=zink DRI_PRIME=1 VK_LOADER_DRIVERS_SELECT=*nouveau* glxinfo , segmention fault
00:36fdobridge_: <airlied> I've been explicity setting the ICD path, but I haven't tried in a DRI_PRIME scenario yet
00:38fdobridge_: <Tom^> vkcube spins on nvk but seems zink,glxgears segfaults i could build with a bit more debug symbols and make a bug report. but first some nvk testing! 😄
00:48fdobridge_: <gfxstrand> Which is which?
00:54fdobridge_: <airlied> second line is zink/nvk
00:54fdobridge_: <gfxstrand> Nice
00:54fdobridge_: <gfxstrand> Time to disable pre-Turing nouveau GL?
00:54fdobridge_: <gfxstrand> I'm joking of course. Let's land NVK for F40 and do that for F41
00:55fdobridge_: <gfxstrand> Swapping out the *entire* graphics stack in one release feels like a bit much.
00:56fdobridge_: <airlied> I think once @zmike comes back we can nail down the last few bits, I'd like to get GL CTS passing completely
00:57fdobridge_: <gfxstrand> Yeah
01:25fdobridge_: <Tom^> cool counter strike 2 runs with ~55-60 on the vulkan renderer
01:26fdobridge_: <Tom^> nvk is officially cs2 compatible 🙂
01:30fdobridge_: <pavlo_it_115> 👏
02:27fdobridge_: <redsheep> Ok finally managed to fight through conflicts building with 26622 on the vulkan-nouveau-git aur package, 26615 was hopeless to fix for a git noob like me
02:28fdobridge_: <redsheep> With the loop unrolling and whatever else has merged since Sunday I went from 100 fps in talos to 122 from the same spot
02:52fdobridge_: <redsheep> Here's a 4090 doing heaven with the same settings mentioned earlier, I am a little surprised to only be just over 2x the performance of a 1650... I am still trying with zink but it's failing for me. Might need to try drm-misc-fixes, I am just on 6.7rc5 without patches right now
02:52fdobridge_: <redsheep> https://cdn.discordapp.com/attachments/1034184951790305330/1184326934780444683/image.png?ex=658b9168&is=65791c68&hm=d3326fa34b4a113a334a8ae3fbd3f639968ba1d323e9aefbc0d61d6a01815c34&
03:13Liver_K: airlied: The nouveau DDX didn't fix it
03:25fdobridge_: <redsheep> Hmm. I went to drm-misc-fixes and even still zink fails to load at all, can't even run glxgears. Is there some patch everyone else is using to fix zink, or is it just not yet working on NV192? I put an icd path and everything
03:25fdobridge_: <gfxstrand> Yeah, I think we still have quite a bit of unnecessary stalling in the driver. That's something we'll need to work on. It's hard to make those big GPUs go fast when you're stalling like mad.
04:01airlied: Liver_K: ouch, got the xorg log from that?
04:03Liver_K: One minute
04:28Liver_K: airlied: https://0x0.st/H3dK.log.old
04:49airlied: Liver_K: okay not many other ideas then
04:58Liver_K: :/
05:11soreau: is wayland not an option?
05:11Liver_K: No
05:13soreau: why not?
05:14Liver_K: Why would I take the time to explain that? Nouveau is meant to run on X, I am curious about what's going wrong is all
05:18soreau: have you tried different wm's?
05:19airlied: you could try adding Option "Accel" "none" to xorg.conf device section
05:19soreau: airlied: ouch?
05:19airlied: that will turn off some stuff you might want, but I think is should fix wm rendering
05:20Liver_K: Alright I will try that next
15:38fdobridge_: <gfxstrand> Something funny is going wrong with LDC.
15:39fdobridge_: <gfxstrand> Maybe variable latency instructions don't like waiting on variable latency instructions?
15:47fdobridge_: <karolherbst🐧🦀> mhh
15:47fdobridge_: <karolherbst🐧🦀> it should be okay as long as you set up the scoreboard barrier correctly
15:48fdobridge_: <karolherbst🐧🦀> @gfxstrand if you want, I can craft an CLC example doing that and you can check how nvidia sets it all up
15:49fdobridge_: <karolherbst🐧🦀> so what instructions is this about? LDC and?
15:51fdobridge_: <gfxstrand> LDC followed by `ld.global` with the result of the LDC feeding into the address.
15:51fdobridge_: <gfxstrand> ```
15:51fdobridge_: <gfxstrand> block 0 L0 [] -> {
15:51fdobridge_: <gfxstrand> r0 = ipa.constant r0 a[0x90] rZ // delay=1 wr:0
15:51fdobridge_: <gfxstrand> r1 = mov 0x4 // delay=15
15:51fdobridge_: <gfxstrand> r0 = shf.l.w.i32 r0 rZ r1 // delay=15 wt=000001
15:51fdobridge_: <gfxstrand> r2 = ldc.b32 c[0x1][r0] // delay=1 rd:0 wr:1
15:51fdobridge_: <gfxstrand> r3 = ldc.b32 c[0x1][r0+0x4] // delay=1 rd:2 wr:3
15:51fdobridge_: <gfxstrand> r4..8 = ld.global.a64.strong.sys.b128 [r2..4+0x10] // delay=1 wt=001010 rd:1 wr:3
15:51fdobridge_: <gfxstrand> r3 = mov r7 // delay=1 wt=001010
15:51fdobridge_: <gfxstrand> r2 = mov r6 // delay=1
15:51fdobridge_: <gfxstrand> r1 = mov r5 // delay=1
15:51fdobridge_: <gfxstrand> r0 = mov r4 // delay=14 wt=000100
15:51fdobridge_: <gfxstrand> exit // delay=1 wt=000001
15:51fdobridge_: <gfxstrand> ```
15:51fdobridge_: <karolherbst🐧🦀> ahh
15:52fdobridge_: <gfxstrand> That's not working
15:52fdobridge_: <gfxstrand> Which... what the hell?!?
15:52fdobridge_: <gfxstrand> That or I'm missing some sort of barrier on the command streamer side
15:54fdobridge_: <karolherbst🐧🦀> mhh interesting...
15:54fdobridge_: <karolherbst🐧🦀> nvidia puts a `MOV` between the `LDC` and `LDG`...
15:54fdobridge_: <karolherbst🐧🦀> https://gist.githubusercontent.com/karolherbst/1a4514043ee0f9196e2f43ffc02f017c/raw/ee34737cbbae6d1138484cefe38edd958d924f2f/gistfile1.txt
15:54fdobridge_: <karolherbst🐧🦀> ehh wait
15:54fdobridge_: <karolherbst🐧🦀> could be because of RA
15:55fdobridge_: <karolherbst🐧🦀> yeah.. my bad
15:55fdobridge_: <karolherbst🐧🦀> but it's kinda weird...
15:56fdobridge_: <karolherbst🐧🦀> yeah.. no
15:56fdobridge_: <karolherbst🐧🦀> I didn't mess up
15:56fdobridge_: <karolherbst🐧🦀> nvidia really moves the value from R2..3 to R4..5
15:57fdobridge_: <karolherbst🐧🦀> and funny enough it uses `MOV` _and_`IMAD.MOV` 🙂
15:57fdobridge_: <karolherbst🐧🦀> so I guess that's faster this way
15:59fdobridge_: <karolherbst🐧🦀> ohh
15:59fdobridge_: <karolherbst🐧🦀> I was able to get rid of it
15:59fdobridge_: <mhenning> @gfxstrand I think we just need to wait another cycle
15:59fdobridge_: <karolherbst🐧🦀> https://gist.githubusercontent.com/karolherbst/717866a0fff3f8e956fce27148614391/raw/e646c035deddb34d30ce2b1bb5d03ba68f1b2437/gistfile1.txt
16:00fdobridge_: <karolherbst🐧🦀> @gfxstrand ^^
16:00fdobridge_: <karolherbst🐧🦀> yeah
16:00fdobridge_: <karolherbst🐧🦀> delay=1 is wrong
16:00fdobridge_: <karolherbst🐧🦀> barrier need at least 2
16:00fdobridge_: <karolherbst🐧🦀> let me check..
16:01fdobridge_: <mhenning> See `src/nouveau/codegen/nv50_ir_emit_gm107.cpp` line 4026
16:01fdobridge_: <gfxstrand> Oh, okay
16:01fdobridge_: <gfxstrand> So we need to wait 2 and then barrier
16:02fdobridge_: <mhenning> Yeah, the barrier isn't valid on the first cycle
16:03montjoie: hello I have tested nouveau on a GeForce GT 1030 and got a crash https://paste.debian.net/1300973/
16:04fdobridge_: <karolherbst🐧🦀> it's funny that `DEPBAR` has a minimum wait of 4 🙂
16:04montjoie: If I can do anything to help bring up nouveau on this card...
16:05fdobridge_: <gfxstrand> This explains so many things...
16:06fdobridge_: <karolherbst🐧🦀> yeah.. that scoreboarding stuff is all funky
16:06fdobridge_: <karolherbst🐧🦀> predicates also behave different from gprs
16:06fdobridge_: <karolherbst🐧🦀> also .HI/.LO ops
16:07fdobridge_: <karolherbst🐧🦀> HI source are read two cycles later
16:07fdobridge_: <karolherbst🐧🦀> do what you will with that information 😄
16:07fdobridge_: <karolherbst🐧🦀> (and also written two cycles later)
16:08fdobridge_: <karolherbst🐧🦀> ehh.. not .HI/.LO.. I meant .WIDE
16:08fdobridge_: <karolherbst🐧🦀> so `IMAD.WIDE` adds an implicit stall of 2, meaning you can reduce the latency by 2
16:09fdobridge_: <karolherbst🐧🦀> it's all very funky
16:12fdobridge_: <gfxstrand> ```
16:12fdobridge_: <gfxstrand> block 0 L0 [] -> {
16:12fdobridge_: <gfxstrand> r0 = ipa.constant r0 a[0x90] rZ // delay=1 wr:0
16:12fdobridge_: <gfxstrand> r1 = mov 0x4 // delay=6
16:12fdobridge_: <gfxstrand> r0 = shf.l.w.i32 r0 rZ r1 // delay=6 wt=000001
16:12fdobridge_: <gfxstrand> r2 = ldc.b32 c[0x1][r0] // delay=1 rd:0 wr:1
16:12fdobridge_: <gfxstrand> r3 = ldc.b32 c[0x1][r0+0x4] // delay=2 rd:2 wr:3
16:12fdobridge_: <gfxstrand> r4..8 = ld.global.a64.strong.sys.b128 [r2..4+0x10] // delay=2 wt=001010 rd:1 wr:3
16:12fdobridge_: <gfxstrand> r3 = mov r7 // delay=1 wt=001010
16:12fdobridge_: <gfxstrand> r2 = mov r6 // delay=1
16:12fdobridge_: <gfxstrand> r1 = mov r5 // delay=1
16:12fdobridge_: <gfxstrand> r0 = mov r4 // delay=5 wt=000100
16:12fdobridge_: <gfxstrand> exit // delay=1 wt=000001
16:12fdobridge_: <gfxstrand> } -> []
16:12fdobridge_: <gfxstrand> ```
16:13fdobridge_: <karolherbst🐧🦀> did you check the scoreboard of what nvidia generates btw? because I haven't 🙂
16:16fdobridge_: <gfxstrand> No
16:17fdobridge_: <gfxstrand> I really need to write a python wrapper around the disassembler that dumps out scoreboard info.
16:17fdobridge_: <karolherbst🐧🦀> I kinda hate the scoreboard stuff, but is that even correct?
16:18fdobridge_: <karolherbst🐧🦀> because the ld has to wait on the 1 and 3 barrier
16:20fdobridge_: <karolherbst🐧🦀> btw
16:20fdobridge_: <karolherbst🐧🦀> you can also combine them
16:20fdobridge_: <!DodoNVK (she) 🇱🇹> What does scoreboard mean here?
16:20fdobridge_: <mhenning> I've been using the one here: https://github.com/daadaada/turingas/blob/master/tools/disasm.py
16:20fdobridge_: <karolherbst🐧🦀> so both `ldc` could signal wr:1
16:20fdobridge_: <karolherbst🐧🦀> and then the ld waits on the both
16:21fdobridge_: <mhenning> wt=001010 is already waiting on the 1 and 3 barrier
16:22fdobridge_: <karolherbst🐧🦀> ohhhhhh
16:22fdobridge_: <karolherbst🐧🦀> duh...
16:22fdobridge_: <karolherbst🐧🦀> yeah.. my bad
16:22fdobridge_: <karolherbst🐧🦀> but
16:22fdobridge_: <karolherbst🐧🦀> anyway
16:22fdobridge_: <karolherbst🐧🦀> you only need to emit one here 😄
16:22fdobridge_: <karolherbst🐧🦀> it's kinda funky, but you could omit the one from the first `ldc`
16:24fdobridge_: <karolherbst🐧🦀> but that's scoreboarding optimization and isn't really important
16:24fdobridge_: <karolherbst🐧🦀> just makes you use less barriers
16:24fdobridge_: <gfxstrand> This is from the blob:
16:24fdobridge_: <gfxstrand> ```
16:24fdobridge_: <gfxstrand> /*0020*/ LDC.64 R4, c[0x2][R4] ; /* 0x0080000004047b82 */
16:24fdobridge_: <gfxstrand> /* 0x000e240000000a00 */
16:24fdobridge_: <gfxstrand> /*0030*/ LDG.E.128.MMIO.GPU R0, [R4+0x10] ; /* 0x0000100004007381 */
16:24fdobridge_: <gfxstrand> /* 0x001fe200001f0d00 */
16:24fdobridge_: <gfxstrand> ```
16:24fdobridge_: <gfxstrand> The first one is `.yld`, `delay=2`, `wr=1`
16:24fdobridge_: <gfxstrand> Second one is `.yld`, `delay=1`, `wt=0b000001`
16:25fdobridge_: <gfxstrand> So... basically what I'm doing. 😩
16:26fdobridge_: <karolherbst🐧🦀> yeah.. I couldn't find the spot in the docs I have
16:26fdobridge_: <gfxstrand> And, yeah, I'm using too many deps. I need a sort of dep dead-code of sorts.
16:26fdobridge_: <gfxstrand> Really, I need to build an actual dependency graph and sort of RA it.
16:26fdobridge_: <karolherbst🐧🦀> I think you can assume stuff finish in order in regards to the units they run on
16:27fdobridge_: <karolherbst🐧🦀> so you can even elimiate waits on deps if you can prove an earlier instruction already fulfilled the req
16:27fdobridge_: <gfxstrand> Yeah, I just need to write the code to do that.
16:27fdobridge_: <karolherbst🐧🦀> they use 2 on the ldc tho
16:28fdobridge_: <gfxstrand> So do I and it's still failing
16:28fdobridge_: <karolherbst🐧🦀> I have to find the spot it explains the additinoal delay..
16:28fdobridge_: <karolherbst🐧🦀> ohh...
16:28fdobridge_: <gfxstrand> Unless I need `delay=2` on both of them.
16:28fdobridge_: <karolherbst🐧🦀> does it work with serial? I guess so?
16:29fdobridge_: <gfxstrand> No it doesn't
16:29fdobridge_: <karolherbst🐧🦀> the delay 1 on the first ldc looks kinda weird...
16:30fdobridge_: <karolherbst🐧🦀> also your movs are all weird
16:30fdobridge_: <karolherbst🐧🦀> what is serial doing anyway?
16:31fdobridge_: <gfxstrand> Oh, serial hangs...
16:31fdobridge_: <karolherbst🐧🦀> ahh ...
16:32fdobridge_: <karolherbst🐧🦀> btw
16:33fdobridge_: <karolherbst🐧🦀> mhh let me verify I understand the wait thing correctly...
16:36fdobridge_: <karolherbst🐧🦀> okay.. found it
16:37fdobridge_: <karolherbst🐧🦀> WAR hazards from fixed latency write to variable read needs a 2 cycle wait
16:37fdobridge_: <karolherbst🐧🦀> WAW hazard in the same case as well
16:40fdobridge_: <karolherbst🐧🦀> uhh, but that's like for independent stuff and just to ensure things happen in order (and not like a previous instruction writes after a following one)
16:40fdobridge_: <karolherbst🐧🦀> ```
16:40fdobridge_: <karolherbst🐧🦀> r3 = ldc.b32 c[0x1][r0+0x4] // delay=2 rd:2 wr:3
16:40fdobridge_: <karolherbst🐧🦀> r4..8 = ld.global.a64.strong.sys.b128 [r2..4+0x10] // delay=2 wt=001010 rd:1 wr:3
16:40fdobridge_: <karolherbst🐧🦀> r3 = mov r7 // delay=1 wt=001010
16:40fdobridge_: <karolherbst🐧🦀> ```
16:41fdobridge_: <karolherbst🐧🦀>
16:41fdobridge_: <karolherbst🐧🦀> so in theory the mov could happen _before_ the two loads
16:41fdobridge_: <karolherbst🐧🦀> ehh wait
16:41fdobridge_: <karolherbst🐧🦀> only if it has a different source
16:41fdobridge_: <karolherbst🐧🦀> (and doesn't wait on the ld)
16:42fdobridge_: <karolherbst🐧🦀> okay.. but now what about consuming/generating barriers
16:45fdobridge_: <karolherbst🐧🦀> ohh
16:45fdobridge_: <karolherbst🐧🦀> found it
16:46fdobridge_: <karolherbst🐧🦀> @gfxstrand sooo.. the minimum latency between a barrier generator and the first consumer needs to be at least 2
16:49fdobridge_: <karolherbst🐧🦀> but in your output `r3 = mov r7 // delay=1 wt=001010` also is totally weird
16:49fdobridge_: <karolherbst🐧🦀> the following movs also have weird scoreboards
16:50fdobridge_: <karolherbst🐧🦀> also.. nvidia seems to user longer waits with exit, but no idea what that's all about
16:57fdobridge_: <karolherbst🐧🦀> I hate scoreboarding, it was simpler when the hardware did it for us :ferrisUpsideDown:
17:18fdobridge_: <gfxstrand> Isn't that what I'm doing?
17:18fdobridge_: <gfxstrand> I mean, I think there are some issues with WaR but I think I'm kinda already doing that?!?
17:45fdobridge_: <karolherbst🐧🦀> yeah... from a quick look it kinda looks "okay", just the movs are weird
17:45fdobridge_: <karolherbst🐧🦀> and not sure what the exit is supposed to do there
18:03fdobridge_: <karolherbst🐧🦀> uhh
18:03fdobridge_: <karolherbst🐧🦀> @gfxstrand is that still the current code? because the movs are definetly wrong..
18:05fdobridge_: <karolherbst🐧🦀> but uhh
18:05fdobridge_: <karolherbst🐧🦀> ahhh
18:05fdobridge_: <karolherbst🐧🦀> pain
18:07fdobridge_: <karolherbst🐧🦀> I wonder if the second mov can mess things up.. the `mov r6` one
19:06montjoie: hello I have tested nouveau on a GeForce GT 1030 and got a crash https://paste.debian.net/1300973/
19:06montjoie: If I can do anything to help bring up nouveau on this card...
19:19fdobridge_: <pavlo_it_115> when and under what circumstances does the failure occur?
19:19fdobridge_: <pavlo_it_115> at system startup?
19:27montjoie: yes just after login when I did a modprobre nouveau
19:28fdobridge_: <pavlo_it_115> and why do it? just remove nvidia drivers
19:28fdobridge_: <pavlo_it_115> nouveau will pull itself up if it is not in the black list
19:32montjoie: nvidia driver was not loaded
19:32fdobridge_: <pavlo_it_115> what distribution do you have? Debian?
19:33montjoie: gentoo
19:33fdobridge_: <pavlo_it_115> omg
19:33fdobridge_: <gfxstrand> Yeah, I'm rewriting my deps pass again. 😅
19:33fdobridge_: <pavlo_it_115> Well, I have no experience with Ghent
19:34fdobridge_: <pavlo_it_115> and it makes no sense to use nouveau on the pascal architecture.
19:34fdobridge_: <pavlo_it_115> it's not worth it
19:34montjoie: I have problem with nvidia driver, I expected nouveau to fix them
19:35fdobridge_: <pavlo_it_115> Which exactly?
19:35montjoie: I use multiple X display, when switching from one to another, I got black screen freeze for some time before it work again
19:36DodoGTA: montjole: I think you need linux-firmware
19:38montjoie: I already have it, some firmware got loaded in the log
19:39DodoGTA: montjole: I don't see gr being loaded though 🤔️
19:45montjoie: it seems no firmware is installed, I will retry with them
19:45montjoie: anyway, nouveau should not crash...
19:49karolherbst: montjoie: that crash isn't inside nouveau though
19:50karolherbst: it's more like a warning saying that some developer messed up
19:50karolherbst: which could have been us though
19:51montjoie: no other driver was probing at that time so heavy chance of related to nouveau
19:51karolherbst: could be, but it is still not a crash
19:52montjoie: anyway, I found also that the gentoo patch for printing loading of firmare is misleading
19:52karolherbst: and installing firmware is the way to make nouveau load on your machine, fixing that warning doesn't help you in any way
19:52karolherbst: montjoie: what patch?
19:52montjoie: the message suggest the loading is successfull, it wasnt but this is unrelated to the problem
19:53montjoie: it is a gentoo kernel specific
19:53karolherbst: mhhh
19:53karolherbst: those messages simply state that a file is being loaded (and found), not that the driver accepted it
19:54karolherbst: "acr: firmware unavailable" this is kinda concerning, as this indicates something went wrong
19:54karolherbst: montjoie: are you using an initramfs or module built into the kernel binary?
19:54montjoie: no initramfs, nouveau is module
19:55karolherbst: heh.. wait a sceond
19:57karolherbst: ah no, everything is alright, kinda wondered why I'm missing firmware files on may laptop..
19:57karolherbst: montjoie: mind sharing the output of `ls /usr/lib/firmware/nvidia/gp108/*/`
19:58montjoie: I have no nvidia firmware at all
19:58karolherbst: ohh wait...
19:58karolherbst: it's 6.1
19:58karolherbst: montjoie: yeah.. then it won't work
19:59montjoie: it is why I hate the loading firmware message, I believed to have it but forgot the previous cleaning of unused firmware...
19:59karolherbst: not using the firmware is unsupported from our end
19:59montjoie: no problem on that
19:59montjoie: I will retry with them
20:00karolherbst: it could be that if only some firmware files are there that the driver ends up in a weird state, which might explain the warning showing up
20:00montjoie: yeah the screen was stuck after that
20:01karolherbst: I see
21:13fdobridge_: <phomes_> was this caused my patch?
21:21fdobridge_: <gfxstrand> It was caused by my first attempt at fixing it. I fixed it harder. 😂
22:09fdobridge_: <pavlo_it_115> Officially, the NVK driver supports vulakn 1.1 specifications, but in vulkaninfo I see that vulkan version is 1.3. Part of the functions required for vulkan 1 software (processed on the processor)?
22:09fdobridge_: <pavlo_it_115> Officially, the NVK driver supports vulakn 1.1 specifications, but in vulkaninfo I see that vulkan version is 1.3. Part of the functions required for vulkan 1.3 software (processed on the processor)? (edited)
22:10fdobridge_: <pavlo_it_115> Is it just a stub to get dxvk etc to work?
22:27fdobridge_: <airlied> are you confusing instance version with driver version?
22:38fdobridge_: <pavlo_it_115> Officially, the NVK driver supports vulakn 1.1 specifications, but in vulkaninfo I see that vulkan version is 1.3. Part of the functions required for vulkan 1.3 software processed on the processor? (edited)